红黑树总结
红黑树,从逻辑上来说就是2-3树或者2-3-4树;从实现上来说是二叉搜索树。
那么实现上的二叉搜索树如何同逻辑上的2-3(-4)树对应起来呢?
通过在二叉搜索树中引入“红色结点”的概念
在逻辑上,“红色结点”具有同父节点融合的魔力,从而对应至2-3-4树中的3结点或者4结点
- 《算法 第四版》以2-3树的角度入手定义了红黑树,结果就是只有左子节点能为红色;
- 《算法导论》中的表述可能比较迷惑,但是其本质上是以2-3-4树的角度入手定义了红黑树,结果就是左右两个子结点均可以是红色;
针对《算法导论》这版定义,可以参考该博客
通过2-3-4树理解红黑树