红黑树

作者: 阿杜me | 来源:发表于2018-07-16 19:14 被阅读0次

对某个节点左旋转是把某个节点变成左节点
对某个节点右旋转是把某个节点变成右节点

1、根节点是黑节点
2、叶节点是黑节点,也叫NIL节点,不存储信息。
3、新插入节点为红节点
4、红节点的两个子节点为黑节点
5、任何节点到叶节点的路径中黑节点个数一致

黑红树做插入、删除操作时,需要通过旋转、着色完成上述要求。

黑红树与平衡二叉树差别:
红黑树放弃追求严格平衡,通过3次以内旋转完成平衡
平衡二叉树追求严格平衡,做插入、删除操作时需要的旋转操作次数不可控制。

红节点不连续,黑节点可以连续,所以最短路径是连续黑节点,最长路径是黑红节点交替出现,也就是最长路径长度为最短路径长度两倍。

相关文章

  • 数据结构—树—红黑树

    红黑树概述 红黑树的插入 红黑树的删除

  • TreeMap

    需要先了解红黑树,这是之前分析红黑树的文章。之前在分析红黑树时,我认为红黑树=二叉查找树+红黑平衡,关于二叉查找树...

  • 数据结构与算法-AVL 红黑树

    AVL树AVL树 算法红黑树红黑树 B站

  • [转载]红黑树

    https://zhuanlan.zhihu.com/p/24367771红黑树简介红黑树插入红黑树删除

  • 拿下红黑树

    红黑树 红黑树、2-3树的简单定义: 实现红黑树的基本结构以及添加操作(维护定义,左旋、右旋、颜色反转) 红黑树与...

  • 红黑树

    啥是红黑树,红黑树 = 二叉树

  • 彻底理解红黑树(二)之 插入

    彻底理解红黑树(一)之 二叉搜索树彻底理解红黑树(二)之 插入彻底理解红黑树(三)之 删除 前言 红黑树的插入情况...

  • 彻底理解红黑树(三)之 删除

    彻底理解红黑树(一)之 二叉搜索树彻底理解红黑树(二)之 插入彻底理解红黑树(三)之 删除 前言 红黑树的删除情况...

  • Golang红黑树

    红黑树 红黑树是每个节点都带有颜色属性(红色或黑色)的二叉查找树。红黑树也属于自平衡二叉查找树。 红黑树具有如下性...

  • 数据结构红黑树添加、修改原理分析

    源码分析大纲 数据结构解析 红黑树试下原理刨析 数据结构解析 1.红黑树 1.1 红黑树概念 红黑树(Red Bl...

网友评论

      本文标题:红黑树

      本文链接:https://www.haomeiwen.com/subject/kwtbpftx.html