数据结构九之红黑树
红黑树也是一种自平衡的二叉搜索树 以前也叫做平衡二叉B树(Symmetric Binary B-tree) 红黑树必须满足以下 5 条性质 1、节点是 RED 或者 BLACK 2、根节点是 BLACK 3、 叶子节点(外部节点,空节点)都是 BLACK 4、 RED 节点的子节点都是 BLACK和父节点都是黑色,从根节点到叶子节点的所有路径上不能有 2 个连续的 RED 节点 5、从任一节点到叶子节点的所有路径都包含相同数目的 BLACK 节点 请问下面这棵是红黑树么? 红黑树必须满足以下 5 条性质 节点是 RED 或者 BLACK 根节点是 BLACK 叶子节点(外部节点,空节点)都是 BLACK RED 节点的子节点都是 BLACK ✓ RED 节点的 parent 都是 BLACK ✓ 从根节点到叶子节点的所有路径上不能有 2 个连续的 RED 节点 从任一节点到叶子节点的所有路径都包含相同数目的 BLACK 节点 上图的判断结果是否:他不是红黑树,五个性质满足了四个,但是第五条性质不满足, 红黑树的等价变换 红黑树 和 4阶B树(2-3-4树)具有等价性 ◼ BLACK 节点与它的 RED 子节点融合在一起,形成1个B树节点 ◼ 红黑树的 BLACK 节点个数 与 4阶B树的节点总个数 相等 ◼ 网上有些教程:用 2-3树 与 红黑树 进行类比,这是极其不严谨的,2