标准地图
-
要使用
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)时间复杂度,每次调用这些函数时,缓存节点数以避免遍历树。