爲什麼HashMap的容量是2的n次冪?

這是一個比較小的知識點,也是一個常見面試題。 首先我們要了解與(&)運算的執行速度比模(%)快很多,可以通過程序驗證。 使用散列法計算時,因爲2的n次冪減一的二進制每一位都是1,這時進行與(&)運算和進行模(%)運算結果是一樣的(見下圖),但使用&運算計算效率更高,因此容量是2的n次冪。
相關文章
相關標籤/搜索