1.知识点
无序关联式容器:底层实现使用哈希表。无序关联式容器中的元素没有顺序,针对于自定义类型需要自己定义std::hash函数与std::equal_to函数
1.unordered_set
//1、key值是唯一的,不能重复
//2、key值是没有顺序的
2.unordered_multiset
//1、key值是不唯一的,可以重复
//2、key值是没有顺序的
3.unordered_map
//1、key值是唯一的,不能重复
//2、key值是没有顺序的
4.unordered_multimap
//unordered_multimap特点
//1、key值是不唯一的,可以重复
//2、key值是没有顺序的注意点:
ps:针对内置类型,初始化、遍历、查找、插入、删除、修改、下标访问这些与关联式容器类似,无序关联式容器中元素没有顺序,底层采用的是哈希表。特别是:对于自定义类型而言,没有针对key值对应的哈希函数以及比较函数,所以需要自己写。
2.哈希表
1.哈希函数:根据key值找到key对应的存储位置
2.哈希函数构造:直接定址、平方取中、数字分析、除留余数
3