目录
①平衡二叉树是在有序二叉树的基础上得来的
②其左右子树的高度差的绝对值不能超过1,一旦超过就要进行平衡调整
平衡调整策略
1.LL型调整
比如:
如图结点3插进去之后会导致结点5的不平衡
LL型调整策略:
中间结点成为父结点,其余子树按顺序排序
那么上图调整后的树为:
平衡调整策略的选择:
不平衡的结点朝着造成不平衡的结点走两步
再比如:
如图1插进去之后,会导致3和5的不平衡,根据平衡调整策略,选择结点3:
2.RR型调整
比如:
插入5后,会导致3的不平衡
RR型调整策略:
中间结点成为父结点,其余子树按顺序排序
再比如:
10插进去之后会导致5的不平衡,根据平衡调整策略:
3.LR型调整
4插进去之后会导致5的不平衡
LR型调整策略:
后两个整体旋转,变成LL型
则上图先变为LL型:
再调整
例:
不平衡的三个结点先变为LL型:
LL型再调整
最后的结果为:
4.RL型调整
RL型调整策略同LR型
比如:
调整后为:
5.例
5,7,4,2,1,3,1,6排序
调整
调整
调整
6.例
画出{25,27,30,12,11,18,14,20,15}构造的平衡二叉树