红黑树的规则和变换总结

红黑树是一种自平衡的二叉查找树,具有五个性质确保其相对平衡。最长路径不超过最短路径的两倍,保证了高效性能。插入操作可能导致不平衡,通过变色和旋转进行调整,插入分为五种情况,确保红黑树规则得以维持。
摘要由CSDN通过智能技术生成

红黑树的规则

  • 性质1:节点是红色或黑色
  • 性质2:根节点是黑色
  • 性质3:每个叶子节点都是黑色的空节点(NIL节点)
  • 性质4:每个红色节点的两个子节点都是黑色(从每个叶子到根的所有路径不能有两个连续的红色节点,但可以有两个黑色的)
  • 性质5:从任一节点到其每个叶子的所有路径都包含相同数目的黑色节点
    截屏2020-11-22 下午6.08.51

红黑树的相对平衡

  • 以上特性确保了从根到叶子的最长可能路径不会超过最短可能路径的两倍长
  • 结果就是这个树基本是平衡的,虽然没有绝对平衡,但是依然是高效的
  • 为什么可以做到最长路径不超过最短路径的两倍
    • 性质4决定了路径不能有两个相连的红色节点
    • 最短路径可能都是黑色节点
    • 最长路径是红色和黑色的交替
    • 性质5决定了所有路径都有相同数目的黑色节点
    • 所以最长路径不可能比最短路径多2倍以上

红黑树的变换

  • 插入一个新节点时,有可能树不再平衡
  • 插入新的节点通常是红色节点,因为红色节点有可能插入而不违反红黑树的任何规则,插入黑色节点则会导致多了黑色节点
  • 插入红色节点可能产生红红相连,需要通过颜色调整和旋转来调整
  • 可以通过三种当时进行变换:
  • 变色:将黑色变为红色
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值