Skip to content

Commit

Permalink
fix Latex
Browse files Browse the repository at this point in the history
  • Loading branch information
AtomAlpaca authored Dec 1, 2023
1 parent 0fb99da commit 3e30f65
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions docs/ds/wblt.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ int build(int l, int r) {
对于删除,我们考虑上面过程的逆过程。即找到与要删除的值权值相等的一个叶子节点,将它和它的父亲节点删除,并用其父亲的另一个儿子代替父亲的位置。
上面提到的建树也可以通过不断往树里插入节点实现,不过如果这样做必须要加入一个权值为 $inf$⁡ 的节点作为根,否则会导致插入第一个元素的时候找不到大于自己的叶子节点。
上面提到的建树也可以通过不断往树里插入节点实现,不过如果这样做必须要加入一个权值为 $\infty$⁡ 的节点作为根,否则会导致插入第一个元素的时候找不到大于自己的叶子节点。
代码实现:
Expand Down Expand Up @@ -126,7 +126,7 @@ void delete(int x, int v, int fa) {

### 维护平衡

类似替罪羊树地,我们引入重构参数 $\alpha \in (0, \frac{1}{2}]$,我们设一个节点的平衡度 $\rho$ 为当前节点左子树大小和节点大小的比值。当一个节点满足 $\rho \in[\alpha, 1-\alpha]$ 时,我们称其为 $\alpha$- 平衡的。如果一棵 WBLT 的每一个节点都是 $\alpha$- 平衡的,那么这棵树的树高一定能保证是 $O(\log n)$ 量级的。证明是显然的,我们从一个叶子节点往父亲方向走,每次走到的节点维护的范围至少扩大到原来的 $\dfrac{1}{1 - \alpha}$ 倍,那么树高就是 $O(\log_{\frac{1}{1-\alpha}}n) = O(\log n)$ 量级的。
类似替罪羊树地,我们引入重构参数 $\alpha \in (0, \dfrac{1}{2}]$,我们设一个节点的平衡度 $\rho$ 为当前节点左子树大小和节点大小的比值。当一个节点满足 $\rho \in[\alpha, 1-\alpha]$ 时,我们称其为 $\alpha$- 平衡的。如果一棵 WBLT 的每一个节点都是 $\alpha$- 平衡的,那么这棵树的树高一定能保证是 $O(\log n)$ 量级的。证明是显然的,我们从一个叶子节点往父亲方向走,每次走到的节点维护的范围至少扩大到原来的 $\dfrac{1}{1 - \alpha}$ 倍,那么树高就是 $O(\log_{\frac{1}{1-\alpha}}n) = O(\log n)$ 量级的。

当某个节点不满足 $\alpha$- 平衡时,说明这个节点是失衡的,我们需要重新维护平衡。但是和替罪羊树不同的是,WBLT 使用旋转操作维护平衡。旋转的大致过程为:将过重的儿子的两个儿子拆下来,一个和过轻的儿子合并,另一个成为一个新的儿子。

Expand Down

0 comments on commit 3e30f65

Please sign in to comment.