Tree 如何知道一棵树是否可以着色
我无法理解为什么下面的RB树是不可着色的。 我认为唯一的要求是: 从根到最远叶子的路径不超过从根到最近叶子路径的两倍Tree 如何知道一棵树是否可以着色,tree,binary-tree,binary-search-tree,red-black-tree,Tree,Binary Tree,Binary Search Tree,Red Black Tree,我无法理解为什么下面的RB树是不可着色的。 我认为唯一的要求是: 从根到最远叶子的路径不超过从根到最近叶子路径的两倍 但在图像中,你可以看到最短路径(橙色)是2,最长路径(蓝色)是4,这意味着根据上述规则,它应该是可着色的。我想你不必计算零。这样,最短路径是1,最长路径是3,这意味着您引用的规则是适用的,因为从根到最近的叶的两倍路径是1*2,而3(实际最长路径)更大=>不可着色。实际上它是可着色的。红黑树必须始终遵守以下规则: 每个节点都有一种红色或黑色 树根总是黑色的 没有两个相邻的红色节
但在图像中,你可以看到最短路径(橙色)是2,最长路径(蓝色)是4,这意味着根据上述规则,它应该是可着色的。我想你不必计算零。这样,最短路径是1,最长路径是3,这意味着您引用的规则是适用的,因为从根到最近的叶的两倍路径是1*2,而3(实际最长路径)更大=>不可着色。实际上它是可着色的。红黑树必须始终遵守以下规则:
- 每个节点都有一种红色或黑色
- 树根总是黑色的
- 没有两个相邻的红色节点(红色节点不能有红色父节点或红色子节点)
- 从根节点到空节点的每个路径都有相同数量的黑色节点
- 黑色高度,这是树中所有分支共有的高度(否则违反4规则)
- “总高度”(不是现有术语),它是从根到零的单个路径上红色节点+黑色节点的最大数量