前面我写了一篇二叉排序树,最后我们提到提高二叉排序树的查找效率是让二叉树的形状均衡,所以就引入了平衡二叉树。
一种特殊类型的二叉排序树
所有结点的左、右子树深度之差的绝对值≤1
左右子树是平衡二叉树;
LL平衡旋转
RR平衡旋转
LR平衡旋转
RL平衡旋转
若在A的左子树的左子树插入结点,使A的平衡因子从1增加到2,需要进行一次向右顺时针旋转。(以B为旋转轴)
若在A的右子树上插入结点,使A的平衡因子从-1
增加至-2,需要进行一次逆时针旋转。(以B为旋转轴)
若在A的左子树的右子树上插入结点,使A的平衡因子从1增加到2,需要先进行逆时针旋转,再顺时针旋转。(以插入的结点C为旋转轴)
若在A的 右子树的左子树上插入结点,使A的平衡因子从-1增加到-2,则需要先进行顺时针旋转,再进行逆时针旋转。(以插入的结点C为旋转轴)
原文:http://blog.csdn.net/it_ds/article/details/50879533