当前位置:首页>经验>

红黑树结构优缺点(红黑树解决什么问题)

来源:原点资讯(m.360kss.com)时间:2022-11-14 14:35:35作者:YD166手机阅读>>

1. 红黑树的概念

红黑树,是一种二叉搜索树,但在每个结点上增加一个存储位表示结点的颜色,可以是Red或Black。 通过对任何一条从根到叶子的路径上各个结点着色方式的限制,红黑树确保没有一条路径会比其他路径长出俩倍,因而是接近平衡的。

红黑树结构优缺点,红黑树解决什么问题(1)

2. 红黑树的性质

2.1. 每个结点不是红色就是黑色

2.2. 根节点是黑色的

2.3. 如果一个节点是红色的,则它的两个孩子结点是黑色的(不会出现连在一起的红色节点)

2.4. 对于每个结点,从该结点到其所有后代叶结点的简单路径上,均包含相同数目的黑色结点(在计算一条路径中黑色节点个数的时候要带上叶子节点,因为叶子节点也是黑色的,也就是空节点)。

2.5. 每个叶子结点都是黑色的(此处的叶子结点指的是空结点)(为了保证空树也是红黑树)

2.6.红黑树确保没有一条路径会比其他路径长出俩倍(红黑树前面的性质保证了当前的性质)

红黑树结构优缺点,红黑树解决什么问题(2)

3. 红黑树的实现

3.1. 带头节点的红黑树

这里我们将红黑树的实现给为带头的红黑树,因为红黑树是map和set的底层数据结构这里我们实现出来红黑树就可以直接用当前我们实现的带头红黑树来实现map和set至于头节点的给出是为了方便于map和set的遍历,在STL中我们区间给出都是左闭右开区间的,既然红黑树作为map和set的底层数据结构那么我们就一定有位置要来放map和set的迭代器,那么就可以将begin位置的迭代器放在head的左,end位置的迭代器可以放在head位置。这里我们将红黑树头节点的颜色给为红色。

红黑树结构优缺点,红黑树解决什么问题(3)

3.2. 红黑树的节点

红黑树结构优缺点,红黑树解决什么问题(4)

首页 1 2 3 4 5 6 7 下一页

栏目热文

红黑树解决了什么问题(红黑树解决冲突)

红黑树解决了什么问题(红黑树解决冲突)

来源公众号:苦逼的码农作者:帅地红黑树算是很难的一种数据结构吧,一般很少考察插入、删除等具体操作步骤,如果遇到要你手写红...

2022-11-14 14:11:08查看全文 >>

二叉树对比红黑树(二叉树数据图解)

二叉树对比红黑树(二叉树数据图解)

在讲解HBase的LSM合并树之前,我们需要来了解一些常用的数据结构知识。跳表链表上图是一个有序链表,我们要检索一个数据...

2022-11-14 14:23:35查看全文 >>

红黑树和b+树的区别(b树和b+树的优缺点)

红黑树和b+树的区别(b树和b+树的优缺点)

二分查找算法二分查找又称折半查找,它是一种效率较高的查找方法。二分查找要求:(1)必须采用顺序存储结构 (2)必须按关键...

2022-11-14 14:11:36查看全文 >>

二叉树怎么转化为红黑树(红黑树和平衡二叉树区别)

二叉树怎么转化为红黑树(红黑树和平衡二叉树区别)

1)引言 在前几篇文章中介绍了 2-3 树的定义以及插入删除操作。本篇文章将在 2-3 树的基础上更进一步,介绍比 2-...

2022-11-14 14:25:16查看全文 >>

红黑树对比二叉树好处有哪些(二叉树到底有啥用)

红黑树对比二叉树好处有哪些(二叉树到底有啥用)

二叉查找树:#二叉查找树就是左结点小于根节点,右结点大于根节点的一种排序树,也叫二叉搜索树。也叫BST,英文Binary...

2022-11-14 14:26:52查看全文 >>

红黑树和平衡二叉树区别(详解什么是平衡二叉树)

红黑树和平衡二叉树区别(详解什么是平衡二叉树)

一,AVL树(平衡二叉树)(1)简介AVL树是带有平衡条件的二叉查找树,一般是用平衡因子差值判断是否平衡并通过旋转来实现...

2022-11-14 14:23:26查看全文 >>

通俗讲红黑二叉树原理(红黑树为什么是平衡二叉树)

通俗讲红黑二叉树原理(红黑树为什么是平衡二叉树)

【51CTO.com原创稿件】 学过数据结构都知道二叉树的概念,而又有多种比较常见的二叉树类型,比如完全二叉树、满二叉树...

2022-11-14 14:42:53查看全文 >>

为什么用红黑树而不是二叉树(红黑树和二叉树优缺点)

为什么用红黑树而不是二叉树(红黑树和二叉树优缺点)

上两节,我们依次讲了树、二叉树、二叉查找树。二叉查找树是最常用的一种二叉树,它支持快速插入、删除、查找操作,各个操作的时...

2022-11-14 14:26:38查看全文 >>

二叉树和红黑树(二叉树和树的关系)

二叉树和红黑树(二叉树和树的关系)

红黑树在工程中的使用,红黑树是平衡树的一种。1. 红黑树顺序的功能2. 快速查找的功能1.二叉树插入1. 如果比当前根节...

2022-11-14 14:17:23查看全文 >>

红黑树为什么叫平衡二叉树(详解什么是平衡二叉树)

红黑树为什么叫平衡二叉树(详解什么是平衡二叉树)

前言面试过程中,多多少少会问一点数据结构(二叉树)的问题,今天我们来复习一下二叉树的相关问题,文末总结。1. 二叉树的由...

2022-11-14 14:52:59查看全文 >>

文档排行