两类查找问题
1、查找有无
-元素'a'是否存在?set;集合
查找对应关系(键值对应)
-元素‘a’出现了几次?map; 字典
set 和 map
常见操作:
-insert
-find
-erase (删除)
-change(map)
Java 中的 Set 和 Map 是O(1) 的 下面的复杂度都是针对C++来说的
详见 力扣 349 和 350 题解
349. 两个数组的交集
350. 两个数组的交集 II
哈希表的时间复杂度为O(1)
哈希表的缺点是失去了数据的顺序性
数据顺序性
-数据集中的最大值和最小值
-某个元素的前驱和后继
-某个元素的floor和ceil
-某个元素的排位rank
-选择某个排位的元素select