為什么產(chǎn)生紅黑樹(shù)
- 動(dòng)態(tài)規(guī)模比平衡二叉樹(shù)(AVL)??;(動(dòng)態(tài)規(guī)模指:對(duì)二叉樹(shù)進(jìn)行查找后進(jìn)行修改或刪除操作等);
- 因?yàn)锳VL對(duì)平衡度要求嚴(yán)格,導(dǎo)致動(dòng)態(tài)查找規(guī)模很大,而紅黑樹(shù)在動(dòng)態(tài)規(guī)模小的情況下也可以達(dá)到相對(duì)平衡;
- 靜態(tài)查找(只查找不操作)相對(duì)比ACL要慢;
- 一種特殊的二叉排序樹(shù);
特性
- 每個(gè)結(jié)點(diǎn)要么紅色要么黑色;
- 根結(jié)點(diǎn)是黑色;
- 每個(gè)葉子結(jié)點(diǎn)都是
黑色; - 紅色結(jié)點(diǎn)其孩子是黑色;
4.1 不會(huì)出現(xiàn)連續(xù)紅色結(jié)點(diǎn);
4.2 紅色結(jié)點(diǎn)的父與子都是黑色; - 從任意一個(gè)結(jié)點(diǎn)到葉子結(jié)點(diǎn)的簡(jiǎn)單路徑中黑色結(jié)點(diǎn)數(shù)量相同(黑高度);
- 最長(zhǎng)簡(jiǎn)單路徑 / 最短簡(jiǎn)單路徑 < 2;
<img src="https://raw.githubusercontent.com/liangxifeng833/my_program/master/images/datastruct/red_black.png" width="558" />