平衡二叉树

162 阅读1分钟

定义

它是一棵二叉排序树,它的左右两个子树的高度差(平衡因子)的绝对值不超过1, 并且左右两个子树都是一棵平衡二叉树。当两边的尽量差不多高,我查找其它才不至于太费劲,如果一个边是1层一边是10层。那最多要查10层,尽量平均一点,各5、6层就舒服点。

image.png

插入节点如果不平衡则有一下几种情况。

LL旋转

顾名思义就是在节点的节点上插入了新数据。这太左边了,所有我们要右旋,右旋就是顺时针。

image.png

RR旋转

顾名思义就是在节点的节点上插入了新数据。这太右边了,所有我们要左旋,左边旋就是逆时针。

image.png

LR旋转

顾名思义就是在节点的节点上插入了新数据。我们旋转要从下至上,那么下太右,所以先下左旋,再上右。

image.png

也就是先25接替了20,成为左边几个的根节点,在世25接替了30.成为全部的根节点。中间的28从左边变到右边。因为左比我小,右比我大

RL旋转

顾名思义就是在节点的节点上插入了新数据。我们旋转要从下至上,那么下太左,所以先下右旋,再上左旋转。

image.png 也就是先25接替了20,成为左边几个的根节点,在世25接替了30.成为全部的根节点。因为左比我小,右比我大.28去了右边。