在java hashmap中查找正確的桶的順序是什麼?在java hashmap中查找正確的桶的順序
在hashmap中,第一個桶使用hashcode方法定位,然後我們使用equals方法遍歷它,所以我的問題是在第一部分,找到所需鍵的桶的複雜性是什麼。
在java hashmap中查找正確的桶的順序是什麼?在java hashmap中查找正確的桶的順序
在hashmap中,第一個桶使用hashcode方法定位,然後我們使用equals方法遍歷它,所以我的問題是在第一部分,找到所需鍵的桶的複雜性是什麼。
查找桶是O(1)。 Hashmap只是計算哈希碼並使用它來索引存儲桶槽。
這個實現爲基本操作(get和put)提供了恆定的性能,假設散列函數在桶之間正確分散元素。迭代集合視圖需要的時間與HashMap實例的「容量」(桶的數量)加上其大小(鍵值映射的數量)成正比。因此,如果迭代性能很重要,不要將初始容量設置得太高(或者負載因子太低)是非常重要的。
它不提供「恆定時間」表現,它提供「攤銷恆定時間」表現。 – jtahlborn 2012-04-03 14:58:03
你可以在這裏找到你所有的答案http://en.wikipedia.org/wiki/Hash_table(Java HashMap使用「分離鏈接」)。 – jtahlborn 2012-04-03 14:35:27