平衡二叉树的单旋转与双旋转
平衡二叉树的插入后失衡情景
对一个平衡二叉树插入新数据导致二叉树失衡时,可以找到所有失衡节点中高度最小的节点,令该节点为k,我们可以发现,新插入的数据与k节点的关系不外乎如下四种情况:
- 新数据插入了k的左儿子的左子树
- 新数据插入了k的左儿子的右子树
- 新数据插入了k的右儿子的左子树
- 新数据插入了k的右儿子的右子树
其中1‾\underline 11和4‾\underline 44是关于k节点的镜像对称,它们都位于树的“外边”(左-左;右-右)
另外2‾\underline 22和3‾\underline 33是关于k节点的镜像对称,它们都位于树的“内部”(左-右;右-左)
图1是四种插入情况

本文详细介绍了平衡二叉树在插入新数据后失衡的情况,特别是针对失衡节点高度最小的节点k进行的单旋转和双旋转操作。分析了新数据插入后四种可能的情景,重点探讨了k1为根节点和k2为根节点时的旋转处理,以及新插入节点位于k2的特殊情况,确保通过旋转操作恢复二叉树的平衡状态。
最低0.47元/天 解锁文章
2678

被折叠的 条评论
为什么被折叠?



