红黑树

匿名 (未验证) 提交于 2019-12-02 23:49:02

红黑树是一棵二叉搜索树,每个结点上增加了一个存储位来表示结点的颜色,可以是RED 或 BLACK。

通过对任何一条root->叶子 的路径上的所有节点的颜色来进行约束。

红黑树确保没有一条路径比其他路径长2倍,是近似平衡的。

性质:

1、节点要么红,要么黑;

2、根节点黑色;

3、叶节点黑;

4、如果一个节点红,那么两个子节点都是黑;

5、每个节点到所有叶子节点的路径上的黑节点数目一样;

红黑树的操作:

每一个红黑树也是一个特化的二叉查找树,因此红黑树上的只读操作与普通二叉查找树上的只读操作相同。

插入删除可能会导致不再符合红黑树的性质,恢复红黑树的性质要O(logn),效率高。

一棵含有n个节点的红黑树的高度至多为2log(n+1).

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!