当前位置: 首页 > wzjs >正文

动态门户网站建设价格网站美工培训学校

动态门户网站建设价格,网站美工培训学校,校园网站开发的意义,wordpress作者权限红黑树介绍 红黑树(Red Black Tree)是一种自平衡二叉查找树。由于其自平衡的特性,保证了最坏情形下在 O(logn) 时间复杂度内完成查找、增加、删除等操作,性能表现稳定。 在 JDK 中,TreeMap、TreeSet 以及 JDK1.8 的 …

红黑树介绍

红黑树(Red Black Tree)是一种自平衡二叉查找树。由于其自平衡的特性,保证了最坏情形下在 O(logn) 时间复杂度内完成查找、增加、删除等操作,性能表现稳定。

在 JDK 中,TreeMap、TreeSet 以及 JDK1.8 的 HashMap 底层都用到了红黑树。

为什么需要红黑树

红黑树的诞生就是为了解决二叉查找树的缺陷。

二叉查找树是一种基于比较的数据结构,它的每个节点都有一个键值,而且左子节点的键值小于父节点的键值,右子节点的键值大于父节点的键值。这样的结构可以方便地进行查找、插入和删除操作,因为只需要比较节点的键值就可以确定目标节点的位置。

但是,二叉查找树有一个很大的问题,就是它的形状取决于节点插入的顺序。如果节点是按照升序或降序的方式插入的,那么二叉查找树就会退化成一个线性结构,也就是一个链表。这样的情况下,二叉查找树的性能就会大大降低,时间复杂度就会从 O(logn) 变为 O(n)。

红黑树的诞生就是为了解决二叉查找树的缺陷,因为二叉查找树在某些情况下会退化成一个线性结构。

红黑树特点

  1. 每个节点非红即黑。黑色决定平衡,红色不决定平衡。
  2. 根节点总是黑色的。
  3. 每个叶子节点都是黑色的空节点也就是 NIL 节点。这里指的是红黑树都会有一个空的叶子节点,是红黑树自己的规则。
  4. 如果节点是红色的,则它的子节点必须是黑色的,反之不一定。通常这条规则也叫不会有连续的红色节点。一个节点最多临时会有 3 个节点,中间是黑色节点,左右是红色节点。
  5. 从任意节点出发,沿着这个节点到达其所有叶子节点的路径上,经过的黑色节点的数量必须相同。每一层都只是有一个节点贡献了树高决定平衡性,也就是对应红黑树中的黑色节点。

正是这些特点才保证了红黑树的平衡,让红黑树的高度不会超过 2log(n+1)。

红黑树数据结构

建立在 BST 二叉搜索树的基础上,AVL、2-3 树、红黑树都是自平衡二叉树(统称 B-树)。但相比于 AVL 树,高度平衡所带来的时间复杂度,红黑树对平衡的控制要宽松一些,红黑树只需要保证黑色节点平衡即可。

红黑树结构实现

public class Node {public Class<?> clazz;public Integer value;public Node parent;public Node left;public Node right;// AVL 树所需属性public int height;// 红黑树所需属性public Color color = Color.RED;}

1.左倾染色

  • 染色时根据当前节点的爷爷节点,找到当前节点的叔叔节点。
  • 再把父节点染黑、叔叔节点染黑,爷爷节点染红。但爷爷节点染红是临时的,当平衡树高操作后会把根节点染黑。

2.右倾染色

3.左旋调衡

一次左旋

右旋+左旋

4.右旋调衡

一次右旋

左旋+右旋


文章转载自:

http://WRbpIYTZ.Lhxrn.cn
http://4Dy9tFm2.Lhxrn.cn
http://Tkfm1BMc.Lhxrn.cn
http://uGdkeyjQ.Lhxrn.cn
http://4EyVKif3.Lhxrn.cn
http://0A3ihMqf.Lhxrn.cn
http://5ZBmDsaL.Lhxrn.cn
http://X6XvwNTr.Lhxrn.cn
http://qCHZpiXH.Lhxrn.cn
http://w95sl4Vs.Lhxrn.cn
http://V1blZBTz.Lhxrn.cn
http://c1JlQgQw.Lhxrn.cn
http://HjlkGQDu.Lhxrn.cn
http://EYRgV9Gz.Lhxrn.cn
http://fF7puotL.Lhxrn.cn
http://6kQ4VNtI.Lhxrn.cn
http://lN0nSx8a.Lhxrn.cn
http://mcEHrkjR.Lhxrn.cn
http://VLjJEZJI.Lhxrn.cn
http://TTx486AA.Lhxrn.cn
http://Q7l2XTlM.Lhxrn.cn
http://wqoVe4wZ.Lhxrn.cn
http://E3AhKKIA.Lhxrn.cn
http://wrq4VZ1V.Lhxrn.cn
http://X3xbTPYl.Lhxrn.cn
http://3KsbAnPo.Lhxrn.cn
http://h9ogWNBh.Lhxrn.cn
http://Oq4nXmlt.Lhxrn.cn
http://cBWUGbpq.Lhxrn.cn
http://m6uvZiN4.Lhxrn.cn
http://www.dtcms.com/wzjs/752459.html

相关文章:

  • 做众筹网站做网站好赚钱吗
  • 网站跳出率多少重庆企业官网设计
  • 杭州精品网站建设中山市城市建设档案馆网站
  • 东明菏泽网站建设筹划电子商务网站建设
  • 成都企业网站建设价格微信营销号
  • 唐山高端网站建设seo网站优化经理
  • 网络营销有什么西安网站优化排名案例
  • 网站网址大全河北项目建设备案网站
  • 网站建设的主要缺陷北京网站备案在哪
  • 2015军考网站建设wordpress中文免费模板下载
  • 宁波网站建设公司制作网站营销型网站建设原则
  • 网站域名权关于建设 医院网站的请示
  • 台州网站优化方案微商分销
  • 闵行网站建设公司纸苏州市郭巷建设局网站
  • 宏基陆通工程建设有限公司网站搜索网站排行榜
  • 做博客网站如何盈利国外永久免费crm系统
  • 县区组织部12380网站建设注册公司有什么风险吗
  • 网站开发的平台wordpress 星星评分
  • 网站建设和技术服务合同范本seo为什么要进行外部优化
  • 烟台手机网站建设费用凡客装修
  • 库尔勒谁在做电商网站建设如何做网盟推广网站
  • 查询一个网站是用什么系统做的自建站网址
  • 网站建设捌金手指花总十六文件外链网站
  • 专业模板建站哪家好西安推广平台排行榜
  • 网站界面风格什么网站做网页好
  • 帮人做兼职的网站吗wordpress计次查询
  • 网页设计网站的设计与规划上海哪家公司提供专业的网站建设
  • 去泰国做网站发网站苏州保洁公司招聘信息
  • 齐河建设局网站网易企业邮箱下载官网
  • 中建南方建设集团网站wordpress我的世界主题