JavaShuo
欄目
標籤
「每天一道面試題」爲什麼HashMap鏈表長度超過8會轉成樹結構?
時間 2020-12-27
欄目
快樂工作
简体版
原文
原文鏈接
HashMap在JDK1.8及以後的版本中引入了紅黑樹結構,若桶中鏈表元素個數大於等於8時,鏈表轉換成樹結構;若桶中鏈表元素個數小於等於6時,樹結構還原成鏈表。因爲紅黑樹的平均查找長度是log(n),長度爲8的時候,平均查找長度爲3,如果繼續使用鏈表,平均查找長度爲8/2=4,這纔有轉換爲樹的必要。鏈表長度如果是小於等於6,6/2=3,雖然速度也很快的,但是轉化爲樹結構和生成樹的時間並不會太短。
>>阅读原文<<
相關文章
1.
爲何HashMap中鏈表長度超過8會轉換成紅黑樹
2.
「每天一道面試題」HashMap桶中鏈表轉紅黑樹爲什麼選擇數字8?
3.
HashMap中初始化大小爲什麼是16? 爲什麼鏈表的長度爲8是變成紅黑樹?爲什麼爲6時又變成鏈表?
4.
「每天一道面試題」HashMap默認加載因子爲什麼選擇0.75?
5.
「每天一道面試題」下面的代碼有問題嗎?爲什麼?
6.
【20190411】【每天一道算法題】旋轉鏈表(鏈表)
7.
「每天一道面試題」Semaphore的實現原理是什麼?
8.
「每天一道面試題」Error和Exception有什麼異同
9.
「每天一道面試題」CyclicBarrier和CountDownLatch有什麼區別
10.
HashMap桶中鏈表轉紅黑樹爲什麼選擇數字8?
更多相關文章...
•
XML 樹結構
-
XML 教程
•
爲什麼使用 XML Schemas?
-
XML Schema 教程
•
爲了進字節跳動,我精選了29道Java經典算法題,帶詳細講解
•
算法總結-廣度優先算法
相關標籤/搜索
天天一道面試題
轉-面試題
爲什麼
8.hashmap
什麼
Linux面試題8
面試試題
樹結構2
樹形結構
不知爲什麼
快樂工作
Spring教程
PHP教程
MyBatis教程
面試
架構
調度
0
分享到微博
分享到微信
分享到QQ
每日一句
每一个你不满意的现在,都有一个你没有努力的曾经。
最新文章
1.
安裝cuda+cuDNN
2.
GitHub的使用說明
3.
phpDocumentor使用教程【安裝PHPDocumentor】
4.
yarn run build報錯Component is not found in path 「npm/taro-ui/dist/weapp/components/rate/index「
5.
精講Haproxy搭建Web集羣
6.
安全測試基礎之MySQL
7.
C/C++編程筆記:C語言中的複雜聲明分析,用實例帶你完全讀懂
8.
Python3教程(1)----搭建Python環境
9.
李宏毅機器學習課程筆記2:Classification、Logistic Regression、Brief Introduction of Deep Learning
10.
阿里雲ECS配置速記
本站公眾號
歡迎關注本站公眾號,獲取更多信息
相關文章
1.
爲何HashMap中鏈表長度超過8會轉換成紅黑樹
2.
「每天一道面試題」HashMap桶中鏈表轉紅黑樹爲什麼選擇數字8?
3.
HashMap中初始化大小爲什麼是16? 爲什麼鏈表的長度爲8是變成紅黑樹?爲什麼爲6時又變成鏈表?
4.
「每天一道面試題」HashMap默認加載因子爲什麼選擇0.75?
5.
「每天一道面試題」下面的代碼有問題嗎?爲什麼?
6.
【20190411】【每天一道算法題】旋轉鏈表(鏈表)
7.
「每天一道面試題」Semaphore的實現原理是什麼?
8.
「每天一道面試題」Error和Exception有什麼異同
9.
「每天一道面試題」CyclicBarrier和CountDownLatch有什麼區別
10.
HashMap桶中鏈表轉紅黑樹爲什麼選擇數字8?
>>更多相關文章<<