AVL

2020-08-27  本文已影响0人  CristianoC

AVL是平衡二叉树,有两个特点

1.左右子树的高度差小于等于 1。(平衡因子绝对值不超过1)
2.其每一个子树均为平衡二叉树。

平衡的操作有两种:左旋和右旋,这两种操作也是左右对称的。

所谓右旋操作,就是把上图中的 B 节点和 C 节点进行所谓“父子交换”。在仅有这三个节点时候,是十分简单的。但是当 B 节点处存在右孩子时,事情就变得有点复杂了。我们通常的操作是:抛弃右孩子,将之和旋转后的节点 C 相连,成为节点 C 的左孩子。这样,我们就能写出对应的代码。

上一篇 下一篇

猜你喜欢

热点阅读