1.红黑树性质
红黑树是一种自平衡二叉查找树(BST),其中的每个节点都遵守下面的规则:
性质1. 节点是红色或黑色
性质2. 根节点是黑色
性质3. 所有叶子都是黑色(叶子是NIL节点)
性质4. 如果一个节点是红的,则它的两个儿子都是黑的。 (即不可能存在相邻的连个红色节点。红色节点不能有红色父节点或红色孩子节点)
性质5. 从任一节点到其叶子的所有简单路径都包含相同数目的黑色节点...
分类:
其他好文 时间:
2015-07-08 02:07:48
阅读次数:
174
1.性质 红黑树是一种二叉查找树,但是每个节点增加一个表示结点颜色(红或黑)的字段,并且满足一下条件:每个节点或是红的,或是黑的根节点是黑的每个叶结点(NIL)是黑的如果一个节点是红的,则它的两个儿子都是黑的对每个节点,从该结点到其子孙节点的所有路径上包含相同数目的黑节点 为方便处理边界条件,我.....
分类:
其他好文 时间:
2015-06-08 21:29:12
阅读次数:
131
红黑树
红黑树是很多平衡树的一种,保证最坏情况下基本动态几何操作时间复杂度为O(log(n))
1、红黑树性质
(1) 每个节点是红色的,或者是黑色的
(2) 根节点是黑色的
(3) 每个叶节点(nil)是黑色的
(4) 如果一个节点是黑色的,则它的连个子节点都是黑色的
(5) 对每个节点,从该节点到其后代叶节点的简单路径上,均包含相同数目的黑...
分类:
其他好文 时间:
2015-05-07 22:18:00
阅读次数:
235
这个玩意代码量巨大,模仿着别人写了整整一天...
Java因为没有引用传递,所以构建树要么是全局设定根然后更改,要么函数返回的是根.....
参考:教你透彻理解红黑树 数据结构-红黑树
红黑树确保没有一条路径比其他的路径长出2倍左右,因而是接近平衡的
1. 红黑树性质(限制):
1)每个结点要么是红的要么是黑的。
2)根结点是黑的。
3)每个叶结点(叶结点即指树尾端N...
分类:
编程语言 时间:
2015-04-14 13:04:52
阅读次数:
195
前几天闲来无事实现了一个红黑树,虽然感觉理解透了,但是真正写码的时候还是调了一个上午才调通,理论还是得联系实践才行啊。另外可以看看234树,算是红黑树的一个变种,可以加深对红黑树的理解红黑树性质1)每个结点要么是红的,要么是黑的。2)根结点是黑的。3)每个叶结点,即空结点(NIL)是黑的。4)如果一...
分类:
编程语言 时间:
2015-03-30 13:10:42
阅读次数:
118
性质导致了强约束,也导致了O(lgn)的高度性质1. 节点是红色或黑色。性质2.
根是黑色。性质3. 所有叶子都是黑色(叶子是NIL节点)。性质4.
每个红色节点的两个子节点都是黑色。(从每个叶子到根的所有路径上不能有两个连续的红色节点)性质5. 从任一节点(不包括该节点)到其每个叶子的所有简单路径...
分类:
其他好文 时间:
2014-05-17 18:52:12
阅读次数:
397