首页 > 技术文章 > 数据结构与算法-2-3树的红黑树实现

holoyong 2017-07-27 21:05 原文

 

定义

红黑树的物理结构是一棵二叉排序树,逻辑结构是一棵2-3树。在红黑树中,2-3树的3-node中的两个key被使用一条分支来连接,即这两个key在物理上成了独立的两个节点。

红黑树是一种具有红色和黑色链接的平衡查找树,同时满足:

  • 红色节点向左倾斜
  • 一个节点不可能有两个红色链接
  • 整个书完全黑色平衡,即从根节点到所以叶子结点的路径上,黑色链接的个数都相同。

 

数据结构

 

平衡化

左旋

右旋

 颜色反转

一个综合例子

 

总结

红黑树很好的实现了2-3树,在最坏的情况下(如下图),其高度也不会超过2lgN。

 

参考:http://www.cnblogs.com/yangecnu/p/Introduce-Red-Black-Tree.html

推荐阅读