美文网首页
一起去看红黑树 (一) 简介

一起去看红黑树 (一) 简介

作者: 杨云龙 | 来源:发表于2019-05-08 10:42 被阅读0次

为什么要写这一系列的文章来介绍红黑树呢?

一切源于文章 <<清华程序员面试遭HR嘲讽:手写红黑树都不会,张口就要1万8!>> (作者 :若丨寒)

网友愤愤不平:


我不会红黑树,从来就没会过,月薪30k+;

楼主你先别忙着装,先写个非递归的快排给我看看,要是写不出来,别说1w8刀月薪,1w8刀年薪都不值哦;

没觉得会红黑树多牛,只觉得会红黑树的人很苦;

这个不准备可能真写不出来,准备过的轻松写出来,所以做出来怎么样,做不出来又怎么样?我们公司若是出这种题目,revewer自己会被面试委员会challenge。够狠,遥想当年的你,也未必会;

你面校招的肯定没问题,都工作了,谁还用啊!楼主是牛人啊,红黑树,我现在也不懂,我也是水人啊,活该只拿1万出头的薪水。


大学时光,相信每个计算机专业的学习,都曾对着学校的在线判题系统狂刷排名过,真是一段肆意的青葱岁月。

我将会用一系列文章,让你彻底掌握红黑树,彻底打败恶意嘲讽,走向辉煌人生。

下面我们开始进入红黑树的学习。


在维基百科上红黑树的介绍如下:

红黑树(英语:Red–black tree)是一种自平衡二叉查找树,是在计算机科学中用到的一种数据结构,典型的用途是实现关联数组

(https://zh.wikipedia.org/wiki/%E7%BA%A2%E9%BB%91%E6%A0%91)

性质

红黑树是每个节点都带有颜色属性的二叉查找树,颜色为红色黑色。在二叉查找树强制一般要求以外,对于任何有效的红黑树我们增加了如下的额外要求:

一、节点是红色或黑色。

二、根是黑色。

三、所有叶子都是黑色(叶子是NIL节点)。

四、每个红色节点必须有两个黑色的子节点。(从每个叶子到根的所有路径上不能有两个连续的红色节点。)

五、从任一节点到其每个叶子的所有简单路径都包含相同数目的黑色节点。


到这里,我相信有些同学就有点望而止步了,其实我们只要分解成几个关键词,就会发现它还是可以慢慢掌握的。

一、二叉树

二、二叉查找树

三、自平衡二叉查找树

四、每个节点都带有颜色属性的二叉查找树

五、红黑树的额外要求

好了,红黑树的简介就这么多,稍微花一点儿时间,大家都是可以掌握它的。

相关文章

  • 一起去看红黑树 (一) 简介

    为什么要写这一系列的文章来介绍红黑树呢? 一切源于文章 <<清华程序员面试遭HR嘲讽:手写红黑树都不会,张口就要1...

  • [转载]红黑树

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

  • TreeMap源码阅读

    一、红黑树简介 TreeMap是通过红黑树实现的,增删改查的操作底层都是对红黑树的相关操作,因此先介绍红黑树的相关...

  • 红黑树简介

    前言 有篇介绍红黑树起源,插入和查询的文章,介绍比较详细,就不重复介绍原理了。先贴上路径:https://www....

  • 数据结构-红黑树

    红黑树简介 R-B Tree,全称是Red-Black Tree,又称为“红黑树”,它一种特殊的二分搜索树。红黑树...

  • 数据结构 - 红黑树

    更多数据结构内容,请参考:数据结构 - 概要 简介 红黑树介绍请参考: 漫画:什么是红黑树? 面试旧敌之红黑树 红...

  • Java 基础之数据结构:树

    现在面试问 MySQL、红黑树好像都是必备问题了。动不动就让手写红黑树或者简单介绍下红黑树。然而,我们如果直接去看...

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

    R-B Tree简介: 红黑树(Red-Black Tree),它是一种特殊的二叉查找树。红黑树的每个记录都有表...

  • 红黑树

    1.红黑树简介 红黑树是一种自平衡的二叉查找树,是一种高效的查找树。它是由 Rudolf Bayer 于1978年...

  • 红黑树

    1. 简介 红黑树(RBT)性质  ①、结点非红即黑;  ②、根节点是黑色;  ③、所有 NULL 结点称为叶子节...

网友评论

      本文标题:一起去看红黑树 (一) 简介

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