非平衡树转平衡树非平衡树的六种形态(第一次出现不平衡就转成平衡树 不会出现多处不平衡)
- 左撇 右撇(可以忽略):将根节点的右孩子作为父节点 左撇类似
-
LL形态:添加点和失衡点(因为添加点使得一个点位的左右子树出现失衡)是左左关系(添加点(将新增的点挂在此节点的名称)是失衡点的左子树的左子树)
-
LR形态:参考上述描述
转换方式
-
LL:以的第一个L作为新的根节点(旋转点) 原来的根节点作为新的根节点的右子树 原来L节点的右孩子作为新右子树的左孩子
-
LR(R点无左节点):以R为旋转点 让R的父节点为根节点的子树,旋转为R的左子树,然后让L节点的父节点为根节点的子树作为R节点 转换成LL形态 再用LL转换
-
LR(R点有左节点):如果R点有左节点 那就先以R点为旋转点 做个小旋转(就是将R点变为左节点 然后将R节点作为左节点的右孩子 转换成LR(R点无左节点)类型)
-
LL与RR对称