总结
<aside>
💡
哈希表是根据关键码(key)的值而直接进行访问的数据结构。
- 数组、set、map是最常用于构建哈希表的三种数据结构
</aside>
使用重点:
- 何时使用哈希表?
- 根据某种条件进行查询(如异位词查找字母、四数相加查找和为0)
- 有些时候不使用哈希表反而更好,判断何时不用哈希表感觉也是个大难点。
- 使用哈希表的话使用数组、set还是map?
- 查询的大小可确定,且下标不会过于分散(如0, 1, 2, 100000)时,使用数组
- 查询的大小未知,只查找是否存在时,使用set
- 查询的大小未知,除了判断是否存在还需要存储其他信息时,使用map
- 哈希表的查询条件(key)是什么?
题目
242. 有效的字母异位词
349. 两个数组的交集
202. 快乐数
1. 两数之和
454. 四数相加 II
383. 赎金信
15. 三数之和
18. 四数之和