我知道如何处理这种情况(第5种情况),当红色黑树中新插入的节点有红色父母,黑色叔叔并且与祖父母(黑色)内联时。
例如,如果是以下情况:
R2(当前节点,R1的左子)----- R1(左子)----- B0(根)---- B1(右子)
对于上面提到的情况,我应该围绕根节点(B0)旋转树,使其成为
R1 ---- R2(新的根节点)------ B0(R2右子)------ B1(B0的右子)
然后将B0的颜色更改为红色,将R2更改为黑色
这是标准解决方案,但如果不是将B0的颜色更改为红色而R2更改为黑色,我将R1的颜色更改为黑色我看不到任何红色属性 - 黑树被侵犯。
任何人都可以对此有所了解吗?谢谢(: