红黑树理论知识 https://biscuitos.github.io/blog/Tree_RBTree/
2-3树理论知识和红黑树关系的分析 https://biscuitos.github.io/blog/Tree_2-3-tree/#RB23
本文在将以2-3树的理论来讲解红黑树的插入操作。在2-3树向红黑树转化时有一个理论是红链接只会在左侧,但是在红黑树中形成一个相当于2-3树中的四节点,此时会出现后连接在右侧的情况。疑问:为什么理论中说红链接只会出现在左侧。
2-3树和红黑树插入演示 7,8,9,10,11,12
插入7 节点以红色节点进行插入,插入7时由于是根节点所以需要变成黑色的节点
插入8,与7的节点融合生成一个三节点 插入8时8>7将所以直接将共色节点8插入到7的右侧 ,形成一个三节点,三节 点在红黑树中使用红色节点表示
插入9
随后插入红色节点9,相当与在2-3树中形成一个四节点,也就是旋转变色。此 时就出现了上述的疑问
这时由于三节点变成了四节点,会将四
节点分解后向上与父节点融合,由于是
根节点所以分出的节点充当根节点,其
他两个元素充当子节点如下 当这个子树时只有三个元素的时候,这个四节点被认为两个三节点所以左右 两个节点为红色,当这个子树元素大于三个的时候就需要被当成三个二节点进
行插入比如插入10时,二节点需要染成黑色
插入10时与9的节点相融合形成一个三节点
当插入元素11时,9,10,11节点再次形成四节点,于是重复插入9时的操作
插入11后由于与9和10的节点融合后形成
一个四节点,这时又会发生分解后向上
融合的一个过程