[STL]map/multimap基本用法及自定义排序

C++ STL标准模板库的总结学习。文章中对于map/multimap常见api使用进行解释说明,其中和set使用一致的部分不加过多实例说明,重点关注数据插入的部分。

复习时间:2021-07-30

  1. map 和unordermap的区别
  2. 一些基本的特性 比如键唯一 值不唯一 元素按照键排序
  3. 几种插入方式 最简单肯定是【】 正常的是 insert(make_pair)
  4. find 和 count的区别 find找到返回对应的迭代器(指向要找的元素)找不到返回end。count找到为1 找不到为0
  5. 自定义排序

map基本概念及其特性

  1. map相对于set区别,map具有键值和实值,所有的元素根据键值自动排序。
  2. pair的第一个元素称为键值,第二个值称为实值。
  3. map也是以红黑树为底层实现机制。
  4. multimap和map的操作类似,唯一区别multimap键值可重复。
  5. map不能通过迭代器修改map的键值,键值关系到容器元素的排序规则,任意改变键值会破坏排序规则,但是可以改变实值。

map构造函数

	# include<map>
	using namespace std;
	map<int, int> m; //默认构造
	map<int, int> m1(m);//拷贝构造

map插入数据元素操作(重点)

四种插入方式,其中第二种最为常用。
但是最特别的是第四种【】插入方式,当发现key不存在,创建pair插入到map容器中,如果发现key存在,那么会修改key对应的value。这是其他几种方式所不能的。

	map<int, int> m; //默认构造

	//插入数据
	//方式一 匿名函数 对组
	m
  • 10
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Windalove

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值