发布时间:2024-07-17 19:21 阅读量:1 文章目录一、unordered 系列关联式容器二、unordered_map1.1 unordered_map 介绍1.2 unordered_map 的接口说明1.2.1 unordered_map 的构造1.2.2 unordered_map 的容量1.2.3 unordered_map 的迭代器1.2.4 unordered_map 的元素访问1.2.5 unordered_map 的查询1.2.6 unordered_map 的修改操作1.2.7 unordered_map 的桶操作三、底层结构3.1 哈希概念3.2 哈希冲突3.3 哈希函数3.3.1 直接定值法----(常用)3.3.2 除留余数法----(常用)3.3.3 平方取中法----(了解)3.3.4 折叠法----(了解)3.3.5 随机数法----(了解)3.3.6 数学分析法----(了解)3.4 哈希冲突解决3.4.1 闭散列3.4.1.1 线性探测3.4.1.2 闭散列(开放定址法)模拟实现3.4.1.3 二次探测3.4.2 开散列3.4.2.1 开散列模拟实现四、模拟实现 unordered_set 和 unordered_map4.1 哈希表的改造4.1.1 模板参数列表的改造4.1.2 增加迭代器操作4.1.3 修改后的哈希表4.2 unordered_set 模拟实现4.3 unordered_map 模拟实现五、结语一、unordered 系列关联式容器在 C++98 中,STL 提供了底层为红黑树结构的一些列关联式容器,在查询时效率可以达到 O ( l o g 2 N ) O(log2^N) O(l