国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁 > Java > Java面試題 > 正文

java面試——紅黑樹

王林
發(fā)布: 2020-12-21 10:36:15
轉(zhuǎn)載
3219人瀏覽過

java面試——紅黑樹

首先我們來看下紅黑樹的結(jié)構(gòu),如圖:

(學(xué)習(xí)視頻分享:java教學(xué)視頻

b708b42b831356580b9247fc7ca3015.png

紅黑樹的結(jié)構(gòu)特點(diǎn):

立即學(xué)習(xí)Java免費(fèi)學(xué)習(xí)筆記(深入)”;

(1)每個(gè)節(jié)點(diǎn)或者是黑色,或者是紅色。
(2)根節(jié)點(diǎn)是黑色。
(3)每個(gè)葉子節(jié)點(diǎn)(NIL)是黑色。 [注意:這里葉子節(jié)點(diǎn),是指為空(NIL或NULL)的葉子節(jié)點(diǎn)!]
(4)如果一個(gè)節(jié)點(diǎn)是紅色的,則它的子節(jié)點(diǎn)必須是黑色的。
(5)從一個(gè)節(jié)點(diǎn)到該節(jié)點(diǎn)的子孫節(jié)點(diǎn)的所有路徑上包含相同數(shù)目的黑節(jié)點(diǎn)。

為什么要要用紅黑樹?

1、首先紅黑樹是不符合AVL樹的平衡條件的,即每個(gè)節(jié)點(diǎn)的左子樹和右子樹的高度最多差1的二叉查找樹。但是提出了為節(jié)點(diǎn)增加顏色,紅黑樹是用非嚴(yán)格的平衡來換取增刪節(jié)點(diǎn)時(shí)候旋轉(zhuǎn)次數(shù)的降低,任何不平衡都會(huì)在三次旋轉(zhuǎn)之內(nèi)解決,而AVL是嚴(yán)格平衡樹,因此在增加或者刪除節(jié)點(diǎn)的時(shí)候,根據(jù)不同情況,旋轉(zhuǎn)的次數(shù)比紅黑樹要多。所以紅黑樹的插入效率更高

(更多相關(guān)面試題推薦:java面試題及答案

2、紅黑樹能夠以O(shè)(log2 (n)) 的時(shí)間復(fù)雜度進(jìn)行搜索、插入、刪除操作

3、簡單來說紅黑樹就是為了解決二叉查找樹的缺陷,因?yàn)槎娌檎覙湓谀承┣闆r下會(huì)退化成一個(gè)線性結(jié)構(gòu)。

紅黑樹和平衡樹的對比和選擇

1、平衡樹結(jié)構(gòu)更加直觀,讀取性能比紅黑樹要高;增加和刪除節(jié)點(diǎn) 恢復(fù)平衡的性能不如紅黑樹
2、紅黑樹,讀取性能不如平衡樹;增加和刪除節(jié)點(diǎn) 恢復(fù)平衡性能比平衡樹好

紅黑樹的使用場景:

TreeMap、TreeSet以及JDK1.8之后的HashMap底層都用到了紅黑樹。

相關(guān)推薦:java入門教程

以上就是java面試——紅黑樹的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!

java速學(xué)教程(入門到精通)
java速學(xué)教程(入門到精通)

java怎么學(xué)習(xí)?java怎么入門?java在哪學(xué)?java怎么學(xué)才快?不用擔(dān)心,這里為大家提供了java速學(xué)教程(入門到精通),有需要的小伙伴保存下載就能學(xué)習(xí)啦!

下載
來源:csdn網(wǎng)
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn
最新問題
開源免費(fèi)商場系統(tǒng)廣告
最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板
關(guān)于我們 免責(zé)申明 意見反饋 講師合作 廣告合作 最新更新
php中文網(wǎng):公益在線php培訓(xùn),幫助PHP學(xué)習(xí)者快速成長!
關(guān)注服務(wù)號 技術(shù)交流群
PHP中文網(wǎng)訂閱號
每天精選資源文章推送
PHP中文網(wǎng)APP
隨時(shí)隨地碎片化學(xué)習(xí)
PHP中文網(wǎng)抖音號
發(fā)現(xiàn)有趣的

Copyright 2014-2025 http://www.miracleart.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號