标准地图
-
要使用
std::map
或std::multimap
中的任何一个,应包含头文件<map>
。 -
std::map
和std::multimap
都按照键的升序对元素进行排序。在std::multimap
的情况下,对于相同键的值不进行排序。 -
std::map
和std::multimap
之间的基本区别在于std::map
不允许std::multimap
所用的相同键的重复值。 -
地图实现为二叉搜索树。所以
search()
,insert()
,erase()
的平均时间为Θ(log n)。对于恒定时间操作使用std::unordered_map
。 -
size()
和empty()
函数具有Θ(1)时间复杂度,每次调用这些函数时,缓存节点数以避免遍历树。