红黑树
来源:互联网 发布:制作一个php图形计算器 编辑:程序博客网 时间:2024/06/16 12:56
红黑树是一种自平衡二叉查找树,在O(log n)时间内做查找,插入和删除等操作。统计性能优化于平衡二叉树(AVL树)。
红黑两色保证树的高度近似平衡,
节点是五元组:color(颜色),key(数据),left(左孩子),right(右孩子)和p(父节点)。
颜色是红或者黑。
根和叶子必须是黑色。
某一节点为红,则两个孩子必须是黑的。
从任一节点到其叶子的所有简单路径都包含相同数目的黑色节点。
节点的插入:
(1)插入新节点必须为红色,时间O(N)。导致出现两个连续红色节点的冲突,则通过颜色调换(color flips)和树旋转来调整。如果插入黑色会导致根到叶子的路径上有一条路上,多了一个额外黑节点,会很难调整。
(2)自上而下调整为红黑树。
调整方法有三种情况,详细见http://dongxicheng.org/structure/red-black-tree/ 0 0
- 红黑树
- 红黑树
- 红黑树
- 红黑树
- 红黑树
- 红黑树
- 红黑树
- 红黑树
- 红黑树
- 红黑树
- 红黑树
- 红黑树
- 红黑树
- 红黑树
- 红黑树
- 红黑树
- 红黑树
- 红黑树
- PHP递归文件目录获取
- Oracle 中的GOTO,RETURN,EXIT
- delphi中 数据类型转换
- The application may be doing too much work on its main thread
- java模拟Filter,FilterChain的实现
- 红黑树
- 文化部办公厅关于开展第十九批违法违规互联网文化活动查处工作的通知
- Sublime Text3 Java编程环境的搭建
- hive 自定义函数UDF,UDAF
- jquery easyui 显示spring mvc处理异常信息
- 移动应用软件及耗电量–基本知识(2)
- 图片放大缩小的简单实现
- input框预先提示信息
- VC++ 6.0 增加编辑框 变量后 运用提示 错位