树-红黑树

红黑树(Red Black Tree):它是一种自平衡的二叉查找树

  • 红黑树(RBT)特性:
  1. 根节点是黑色
  2. 节点由红色和黑色组成
  3. 红节点的子节点必为黑节点
  4. 叶子节点都是黑色空节点(NIL节点)
  5. 从任一节点到其每个叶子的所有路径都包含相同数目的黑色节点(不包含NIL节点)

  • 红黑树如何实现自平衡
  1. 利用红黑树的特性,也就是它的规则
  2. 当插入或者删除节点破坏了红黑树的规则时,它便会才去措施做出一些调整

注:红黑树插入元素时都是红色节点,如果插入元素为黑色直接就破坏了它的规则(上面第5点)

  • 红黑树调整方式(具体方式参考下方链接)
  1. ​​​​​​​变色
  2. 旋转(左旋转、右旋转)
  • 为什么要用红黑树
  1. 简单来说红黑树就是为了解决二叉查找树的缺陷,因为二叉查找树在某些情况下会退化成一个线性结构

参考:

  1. 什么是红黑树​​​​​​​

猜你喜欢

转载自blog.csdn.net/m0_37524661/article/details/88036807