哈希表与树笔记(红黑树)(六)

红黑树

红黑树是每个节点都带有颜色属性的二叉查找树,颜色或红色或黑色。  在二叉查找树强制一般要求以外,对于任何有效的红黑树我们增加了如下的额外要求:

性质1. 节点是红色或黑色。 

性质2. 根节点是黑色。 

性质3.所有叶子都是黑色。(叶子是NUIL节点) 

性质4. 每个红色节点的两个子节点都是黑色。(从每个叶子到根的所有路径上不能有两个连续的红色节点)

性质5.. 从任一节点到其每个叶子的所有路径都包含相同数目的黑色节点。 

   以上出自百度百科

       从字面意思上来理解(个人理解,如有错误欢迎指正):

                   性质1、性质2和性质5不用多说

                   性质3:红黑树中你所检索的数据肯定不是叶子节点既红黑树中所有有效结点都不是叶子节点

                   性质4:红色节点的父节点和子节点都是黑色,但是黑色节点父节点和子节点可能是黑色

 

 

红黑树的插入

       红黑树的插入错做主要分为两部分工作,这两部分工作和二叉平衡树的插入类似,都是先找到插入位置,再进行自平衡。

不一样的地方就是自平衡的规则:

        

 

红黑树删除

 

二叉树删除结点找替代结点有3种情情景:

  • 情景1:若删除结点无子结点,直接删除
  • 情景2:若删除结点只有一个子结点,用子结点替换删除结点
  • 情景3:若删除结点有两个子结点,用后继结点(大于删除结点的最小结点)替换删除结点

(二叉树: 一个结点的前驱,是小于x.key的最大关键字的结点,一个结点的后继,是大于x.key的最小关键字的结点)

参考:30张图带你彻底理解红黑树-安卓大叔

 

         

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值