标准地图

  • 要使用 std::mapstd::multimap 中的任何一个,应包含头文件 <map>

  • std::mapstd::multimap 都按照键的升序对元素进行排序。在 std::multimap 的情况下,对于相同键的值不进行排序。

  • std::mapstd::multimap 之间的基本区别在于 std::map 不允许 std::multimap 所用的相同键的重复值。

  • 地图实现为二叉搜索树。所以 search()insert()erase() 的平均时间为Θ(log n)。对于恒定时间操作使用 std::unordered_map

  • size()empty() 函数具有Θ(1)时间复杂度,每次调用这些函数时,缓存节点数以避免遍历树。