红色父节点是否有可能只有一个黑色子节点?我一直在网上玩Red / Black Tree模拟器,我无法设法解决这个问题。
这背后的原因是我相信我的代码中有一个不必要的IF ......
#hero4:hover {
background-color: grey;
}
感谢任何反馈!!
答案 0 :(得分:5)
不,这是不可能的。
请记住,在红色/黑色树中,树的根部之外的所有路径都必须通过相同数量的黑色节点(即红色/黑色树不变量之一)。
如果您的红色节点x
有一个黑色的孩子y
,则它不能有另一个红色的孩子(因为它打破红色/黑色不变量,红色节点不能有红色孩子)。
这意味着通过x
到失踪孩子的路径将通过至少少于通过x
的路径的黑色节点,然后到y
,然后离开树从那里,打破红/黑树不变量。
答案 1 :(得分:0)