1. hash_map

HashMap是基于哈希表实现的,每一个元素是一个key-value对,其内部通过单链表解决冲突问题,容量不足(超过了阀值)时,同样会自动增长。

hashMap使用开链法构建hashTable

2. hash_map和map选择

2.1. 查找速度

hash_map速度快。

总体来说,hash_map 查找速度会比 map 快,而且查找速度基本和数据数据量大小无关,属于常数级别;

而 map 的查找速度是 log(n) 级别。

2.2. 数据量

hash_map效率高

如果你考虑效率,特别是在元素达到一定数量级时,考虑考虑 hash_map。

2.3. 内存空间

hash_map内存空间消耗大

内存使用特别严格,希望程序尽可能少消耗内存,那么一定要小心,hash_map 可能会让你陷入尴尬,特别是当你的 hash_map 对象特别多时,你就更无法控制了。而且 hash_map 的构造速度较慢。

Copyright © ershouche-FE 2019 all right reserved,powered by Gitbook文件修订时间: 2022-02-28 22:16:14

results matching ""

    No results matching ""