我在红黑树中插入了节点36,结果是以下红色黑树:

我的问题是在这种特殊情况下如何处理双红?是2号案件还是3号案件?
发布于 2013-11-06 09:38:41
基于维基百科的性质和案例.
36 将插入到第5种情况下,旋转的左转。
父母P是红色的,但叔叔是黑色的,或者不在那里。
维基百科只是说“叔叔是黑人”,但是,看看代码,你会发现这种情况会触发。
请注意,没有36的树已经无效,因为属性5(从任何给定节点到其叶节点的所有路径都包含相同数目的黑色节点)不被保存:
假设插入顺序是20, 15, 22, 30, 36..。
所有节点都以红色的形式插入。
将在案例2下插入22。
父母是黑人。
30将插入案例3下,使22和15变为黑色,20为红色。
父母和叔叔都是红色的,都是黑色的,而祖父母则是红色的。
36将插入在第5种情况下,旋转22向左。
父母P是红色的,但叔叔是黑色的,或者不在那里。
发布于 2019-07-02 02:18:45
22没有留下的孩子
因此.。
案例1:结构调整
我们将离开轮值
30 ->根“黑”
22->左撇子“红色”
36->正确的孩子“红色”
https://stackoverflow.com/questions/19804358
复制相似问题