红黑树插入:插入时为什么要使节点变红?

Ind*_*Anu 8 algorithm tree red-black-tree binary-search-tree data-structures

在红黑树属性中不包含插入节点颜色的任何规则,我们总是插入红色节点.

如果我们插入黑色节点它是否违反任何属性(4中的任何规则)?

tem*_*def 10

是的!假设树中有一个节点:

    5 (black)
Run Code Online (Sandbox Code Playgroud)

现在在树中插入一个新的黑色节点:

    5 (black)
     \
      9 (black)
Run Code Online (Sandbox Code Playgroud)

现在,树中每个根空路径具有相同数量的黑色节点的不变量被破坏,因为从左边的路径有一个黑色节点,而从右边的路径每个都有两个.

希望这可以帮助!