數(shù)據(jù)結(jié)構(gòu)第一季 Day10 紅黑樹

一与倡、初識紅黑樹

1衰琐、紅黑樹的英文是什么焙矛?紅黑樹和二叉搜索樹有什么關(guān)系?

  • 紅黑樹(Red Black Tree):也是一種自平衡的二叉搜索樹
  • 以前也叫做平衡二叉 B 樹(Symmetric Binary B-Tree)
image.png

2织堂、紅黑樹必須滿足以下 5 條性質(zhì)?

  • ①節(jié)點(diǎn)都是 Red 或者 Black
  • ②根節(jié)點(diǎn)是 Black
  • ③葉子節(jié)點(diǎn)(外部節(jié)點(diǎn)奶陈、空節(jié)點(diǎn))都是 Black
  • ④Red 節(jié)點(diǎn)的子節(jié)點(diǎn)都是 Black(推導(dǎo)一:Red 節(jié)點(diǎn)的 parent 都是 Black易阳;推導(dǎo)二:從根節(jié)點(diǎn)到葉子節(jié)點(diǎn)的所有路徑不能有 2 個連續(xù)的 Red 節(jié)點(diǎn))
  • ⑤從任一節(jié)點(diǎn)到葉子節(jié)點(diǎn)的所有路徑都包含相同數(shù)目的 Black 節(jié)點(diǎn)
image.png

3、紅黑樹與哪階 B 樹等價吃粒?

  • 紅黑樹 和 4階(2-3-4)B樹具有等價性
image.png
image.png

二潦俺、紅黑圖添加

1、紅黑樹添加的所有情況(總共有 12 種情況)徐勃?

  • 往紅黑樹添加新節(jié)點(diǎn)黑竞,都是往葉子節(jié)點(diǎn)上添加,并成為新的葉子節(jié)點(diǎn)疏旨。
image.png

2很魂、將添加節(jié)點(diǎn)的 12 種情況歸類之一:parent 為 Black(有四種情況)

  • 直接也滿足 4階B樹 的性質(zhì)
  • 因此不用做任何處理

3、將添加節(jié)點(diǎn)的 12 種情況歸類之二:parent 為 Red && uncle 不是 Red && LL/RR(有兩種情況)

  • parent 染成 Black檐涝,grand 染成 Red
  • grand 進(jìn)行單旋操作
image.png

4遏匆、將添加節(jié)點(diǎn)的 12 種情況歸類之三:parent 為 Red && uncle 不是 Red && LR/RL (有兩種情況)

  • 把自己染成 Black,grand 染成 Red
  • 進(jìn)行下面之一的雙旋操作
  • LR:parent 左旋轉(zhuǎn)谁榜,grand 右旋轉(zhuǎn)
  • RL:parent 右旋轉(zhuǎn)幅聘,grand 左旋轉(zhuǎn)
image.png

5、將添加節(jié)點(diǎn)的 12 種情況歸類之四:parent 為 Red && uncle 是 Red (有四種情況)

  • parent窃植、uncle 染成 Black
  • grand 向上合并(染成 Red帝蒿,當(dāng)做是新添加的節(jié)點(diǎn)進(jìn)行處理)
  • grand 向上合并時,可能繼續(xù)發(fā)生上溢(若上溢持續(xù)到根節(jié)點(diǎn)巷怜,只需將根節(jié)點(diǎn)染成 Black)
image.png
image.png
image.png

二葛超、紅黑樹的補(bǔ)充

1、為什么紅黑樹的 5 條性質(zhì)就能讓紅黑樹也稱為平衡二叉搜索樹延塑?

  • 首先不要拿 AVL 樹的平衡去衡量紅黑樹的平衡
  • 紅黑樹的平衡其實(shí)就是 B 樹的平衡
  • 相比 AVL 樹绣张,紅黑樹的平衡標(biāo)準(zhǔn)比較寬松:沒有一條路徑會大于其他路徑的 2 倍

2、AVL樹 和 紅黑樹之間如何選擇关带?(最重要侥涵,一定要切記)

image.png
image.png

三、紅黑樹刪除節(jié)點(diǎn)

1、紅黑樹刪除的奧義是什么芜飘?

  • 在 B 樹中务豺,最后真正被刪除的元素都在葉子節(jié)點(diǎn)中
  • 紅黑樹等價于四階(2-3-4)B樹,并且紅黑樹是二叉搜索樹的子集

2嗦明、紅黑樹刪除太復(fù)雜冲呢,后面再看吧。

image.png
image.png
image.png
image.png
image.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末招狸,一起剝皮案震驚了整個濱河市敬拓,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌裙戏,老刑警劉巖乘凸,帶你破解...
    沈念sama閱讀 217,406評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異累榜,居然都是意外死亡营勤,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評論 3 393
  • 文/潘曉璐 我一進(jìn)店門壹罚,熙熙樓的掌柜王于貴愁眉苦臉地迎上來葛作,“玉大人,你說我怎么就攤上這事猖凛÷复溃” “怎么了?”我有些...
    開封第一講書人閱讀 163,711評論 0 353
  • 文/不壞的土叔 我叫張陵辨泳,是天一觀的道長虱岂。 經(jīng)常有香客問我,道長菠红,這世上最難降的妖魔是什么第岖? 我笑而不...
    開封第一講書人閱讀 58,380評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮试溯,結(jié)果婚禮上蔑滓,老公的妹妹穿的比我還像新娘。我一直安慰自己遇绞,他們只是感情好键袱,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,432評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著试读,像睡著了一般杠纵。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上钩骇,一...
    開封第一講書人閱讀 51,301評論 1 301
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼倘屹。 笑死银亲,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的纽匙。 我是一名探鬼主播务蝠,決...
    沈念sama閱讀 40,145評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼烛缔!你這毒婦竟也來了馏段?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,008評論 0 276
  • 序言:老撾萬榮一對情侶失蹤践瓷,失蹤者是張志新(化名)和其女友劉穎院喜,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體晕翠,經(jīng)...
    沈念sama閱讀 45,443評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡喷舀,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,649評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了淋肾。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片硫麻。...
    茶點(diǎn)故事閱讀 39,795評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖樊卓,靈堂內(nèi)的尸體忽然破棺而出拿愧,到底是詐尸還是另有隱情,我是刑警寧澤碌尔,帶...
    沈念sama閱讀 35,501評論 5 345
  • 正文 年R本政府宣布赶掖,位于F島的核電站,受9級特大地震影響七扰,放射性物質(zhì)發(fā)生泄漏奢赂。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,119評論 3 328
  • 文/蒙蒙 一颈走、第九天 我趴在偏房一處隱蔽的房頂上張望膳灶。 院中可真熱鬧,春花似錦立由、人聲如沸轧钓。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽毕箍。三九已至,卻和暖如春道盏,著一層夾襖步出監(jiān)牢的瞬間而柑,已是汗流浹背文捶。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留媒咳,地道東北人粹排。 一個月前我還...
    沈念sama閱讀 47,899評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像涩澡,于是被迫代替她去往敵國和親顽耳。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,724評論 2 354

推薦閱讀更多精彩內(nèi)容