红黑树理解 (三)变色
Posted zhangjin1120
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了红黑树理解 (三)变色相关的知识,希望对你有一定的参考价值。
红黑树理解 (一) 从2-3树到红黑树
红黑树理解(二)插入过程图解
红黑树理解(三)变色
什么情况下,节点需要变色?
插入新的节点后,新的红黑树不再满足原先的5个规则,需要对原来的树进行调整。调整的措施有变色和旋转。多数情况下,既要变色,又要旋转。少数情况是只需要变色就能平衡的。
变色过程举例
这里举一个,只需要变色,就能使红黑树平衡的例子。并不意味着,只通过变色,就能够使红黑树平衡。
当前节点的父节点和叔节点都是红色, 如下图:
新节点默认是红色(如果默认为黑色,直接就违反规则5了),插入后,4和5都是红色,不满足规则四。如下图:
进行变色操作,5和7变黑色,6变红色。如下图,当然根节点6还是不符合规则2。
将根节点也改为黑色。如下图,红黑树再次平衡。
以上是关于红黑树理解 (三)变色的主要内容,如果未能解决你的问题,请参考以下文章