unordered_map和map的区别
时间: 2023-04-30 08:02:22 浏览: 87
C++11 unordered_map与map(插入,遍历,Find)效率对比。
`unordered_map` 和 `map` 是 C++ STL 中的两种关联式容器,它们都用于存储键-值对。但是它们的底层实现有所不同:
`unordered_map` 底层使用的是哈希表,查询和插入的时间复杂度是常数级别的。查找和插入的次序不同于元素的实际顺序。
`map` 底层使用的是红黑树,查询和插入的时间复杂度都是 log(n) 级别的。查找和插入的顺序与元素的实际顺序相同。
所以我们可以根据需求来选择使用unordered_map 还是 map
- 如果查找和插入的次序不重要,且需要快速查找和插入,可以使用 `unordered_map`。
- 如果需要按照元素的顺序遍历,可以使用 `map`。
阅读全文