C++中map的基本使用
1个回答
展开全部
map本质上是一种 映射 ,其 可以将任何基本类型(包括STD容器)映射到任何基本类型(包括STL容器) 。本质上数组也是一种映射,只不过是一种局限性更大的映射,只能将int类型映射到其它类型,并且由于数组的连续性,当key的分布过于稀疏的时候,会造成大量的空间浪费。要使用map需要 #include <map> 并加上 using namespace std;
运行结果如下:
总结:
输出的结果不变。因此,map中元素的插入顺序,与map的遍历顺序/map内部元素的排序没有任何关系。之所以会这样,本质上是因为map是用红黑树实现的,红黑树是一种高效的自平衡的二叉树,其会通过旋转和变色来保证平衡,以此来保证内部元素的有序性,方便查找。
PS: 除了删除单个元素外,erase还可以删除元素区间 m.erase(first, last) 该区间是一个左闭右开的区间 [first, last)
本质上,用到映射的场景可以考虑使用map,此外map内元素自动有序也是一大优势。
拓展:
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询