你對Collection中Set、List、Map理解?

刘大猫26發表於2024-12-05

@

目錄
  • 一、圖
  • 二、hashMap
    • 1.擴容演算法
    • 2.ConcurrentHashMap原理
    • 3.TreeMap紅黑樹特性?使用好處?
    • 4.LinkedHashMap的特點?資料結構?
  • 三、HashMap底層實現原理及面試問題

一、圖

二、hashMap

1.擴容演算法

所以說,當陣列長度為2的n次冪的時候,不同的key算得得index相同的機率較小,那麼資料在陣列上分佈就比較均勻,也就是說碰撞的機率小,相對的,查詢的時候就不用遍歷某個位置上的連結串列,這樣查詢效率也就較高了。

hashmap陣列擴容之後,最消耗效能的點就出現了:原陣列中的資料必須重新計算其在新陣列中的位置,並放進去,這就是resize。

2.ConcurrentHashMap原理

底層採用:CAS + synchronized 來保證併發安全性。

3.TreeMap紅黑樹特性?使用好處?

使用好處:
1)是一種自平衡二叉樹
2)最大長度-最小長度 < 1倍
3)它雖然是複雜的,但它的最壞情況執行時間也是非常良好的,並且在實踐中是高效的。

4.LinkedHashMap的特點?資料結構?



三、HashMap底層實現原理及面試問題

https://blog.csdn.net/suifeng629/article/details/82179996

重要資訊

  • 官網:https://ais.cn/u/vEbMBz

相關文章