Map in C++ Standard Template Library (STL)

详情请见:https://www.geeksforgeeks.org/map-associative-containers-the-c-standard-template-library-stl/

List of all functions of Map:

P.S. map和set还有无序版本,分别对应头文件<unordered_map>、<unordered_set>

  • 具有相同相同哈希值的元素被放在同一个桶(bucket)中。
  • Unordered_map vs unordered_set:  

  在unordered_set中,我们只有键,没有值,这些主要用于查看集合中的存在/不存在。 例如,考虑计算单个单词频率的问题。 我们不能使用unordered_set(或set),因为我们不能存储计数。  

  • Unordered_map vs map:  

  Map(类似set)是一个唯一键的有序序列,而unordered_map中的键可以以任何顺序存储,所以unordered。  

  映射是作为平衡的树结构实现的,这就是为什么可以维护元素之间的顺序(通过特定的树遍历)。 map操作的时间复杂度为O(Log n),而unordered_map的平均时间复杂度为O(1)。 

 

posted @ 2021-07-06 10:12  PiaYie  阅读(66)  评论(0编辑  收藏  举报