概览:
简单来说,哈希表是一种依赖哈希函数组织数据,以达到常数级别时间复杂度,插入和搜索都非常高效的数据结构。
两种哈系表:
哈希集合
是集合
数据结构的实现之一,用于存储非重复值
。哈希映射
是映射
数据结构的实现之一,用于存储(key, value)
键值对。
大多数高级程序设计语言标准库里都内置了哈系表模板。
1、哈希表的原理
哈希表的关键思想是使用哈希函数将键映射到存储桶
。更确切地说,
- 当我们插入一个新的键时,哈希函数将决定该键应该分配到哪个桶中,并将该键存储在相应的桶中;
- 当我们想要搜索一个键时,哈希表将使用相同的哈希函数来查找对应的桶,并只在特定的桶中进行搜索。
示例
在示例中,我们使用 y = x % 5
作为哈希函数。让我们使用这个例子来完成插入和搜索策略