目录
-
-
-
- 成员变量属性
- 构造函数
- put()
- remove()
- get()
- 总结: HashTable的优点?
-
-
HashTable 是一种基于哈希函数
的数据结构。它将每个键Key映射到一个唯一的索引Index,通过这个索引来快速访问数据。底层是一个数组
,数组中的每个元素称为桶(bucket)。
当我们需要访问某个元素时,首先会对键进行哈希函数
计算得到一个Hash值
,再将Hash值进行位运算
,最后和数组长度进行取模
,得到它的索引
。然后通过该索引找到相应的桶,最终在桶中找到对应的元素。
存在哈希碰撞
的问题,即不同的键经过哈希函数计算后可能得到相同的索引,导致数据被存储在同一个桶中,HashTable 默认使用链表
来解决哈希碰撞。
如何将Key映射成index的?