红黑树的5个性质:
1.每个节点要么是红色,要么是黑色。
2.根节点是黑色。
3.每个叶子节点,即空节点(NIL)是黑色的。
4.如果一个节点是红色的,那么它的两个儿子都是黑色的。
(从根节点到每个叶子节点的路径上,不能有两个连续的红色节点。)
5.对每个节点,从该节点到叶子节点的所有路径上包含相同数目的黑色节点。
这些约束强制了红黑树的关键性质: 从根到叶子的最长的可能路径不多于最短的可能路径的两倍长。
要知道为什么这些特性确保了这个结果,注意到性质4导致了路径不能有两个毗连的红色节点就足够了。 最短的可能路径都是黑色节点,最长的可能路径有交替的红色和黑色节点。 因为根据性质5所有最长的路径都有相同数目的黑色节点,这就表明了没有路径能多于任何其他路径的两倍长。