Algorithm 红黑树插叔叔时是黑的,与祖父母一致

Algorithm 红黑树插叔叔时是黑的,与祖父母一致,algorithm,tree,red-black-tree,Algorithm,Tree,Red Black Tree,我知道当红黑树中新插入的节点有红色的父节点、黑色的叔叔节点以及与祖父母(黑色)内联时如何处理这种情况(第5种情况)。 例如,如果出现以下情况: R2(当前节点,R1的左子节点)---R1(左子节点)---B0(根节点)---B1(右子节点) 对于上面提到的情况,我应该围绕根节点(B0)旋转树,使其成为 R1----R2(新根节点)---B0(R2右子节点)---B1(B0的右子节点) 然后将B0的颜色更改为红色,R2的颜色更改为黑色 这是标准溶液,但如果不将B0的颜色更改为红色,将R2的颜色更改

我知道当红黑树中新插入的节点有红色的父节点、黑色的叔叔节点以及与祖父母(黑色)内联时如何处理这种情况(第5种情况)。 例如,如果出现以下情况:
R2(当前节点,R1的左子节点)---R1(左子节点)---B0(根节点)---B1(右子节点)

对于上面提到的情况,我应该围绕根节点(B0)旋转树,使其成为

R1----R2(新根节点)---B0(R2右子节点)---B1(B0的右子节点)

然后将B0的颜色更改为红色,R2的颜色更改为黑色

这是标准溶液,但如果不将B0的颜色更改为红色,将R2的颜色更改为黑色,我将R1的颜色更改为黑色我看不到红黑树的任何属性被违反


有人能解释一下吗?谢谢(:

明白了,我假设这只是一个局部修复,但可能会出现这样的情况,即这是一个完整的树,在这种情况下,根节点不能是红色的。谢谢在这种情况下,一张图片上显示1000个字:)是的,但不知道如何在stackoverflow上执行同样的操作。