我看到 ConcurrentHashMap 將其 (key, value) 對存儲在. Node但是,aNode也可以組織為 a TreeBin。因此,ConcurrentHashMap 的底層數(shù)據(jù)結(jié)構(gòu)是一個列表,其中包含獨立或樹的元素。為什么數(shù)據(jù)結(jié)構(gòu)既不是列表也不是樹?這種更復雜的實現(xiàn)有什么用處?
1 回答

三國紛爭
TA貢獻1804條經(jīng)驗 獲得超7個贊
二叉樹結(jié)構(gòu)允許通過元素的自然順序或哈希碼輕松對元素進行排序(如果項目不可比較的話)。對于相當大的哈希桶,這允許快速檢索元素。
然而,在一個較小的哈希桶中,維護這棵樹的成本遠遠大于搜索樹結(jié)構(gòu)所節(jié)省的成本。在這種情況下,平均而言,列表會更有效率。
添加回答
舉報
0/150
提交
取消