map取第一个元素_map/multimap容器

map基本概念
  • map中所有元素都是pair

  • pair中第一个元素为key(键值),起索引作用,第二个元素为value(实值)

  • 所有元素都会根据元素的键值自动排序

本质:
  • map/multimap属于关联式容器,底层结构是用二叉树实现

优点
  • 可以根据Key值快速找到value值

map/multimap区别:
  • map中不允许容器中有重复key值元素

  • multimap允许容器中有重复key值元素

map构造和赋值
  • 构造

    • map mp;//默认构造

    • map(cons map &map);//拷贝构造

  • 赋值

    • map& operator=(const map &map);//重载等号操作符

map大小和交换
  • size();//返回容器中元素的数目

  • empty();//判断容器是否为空

  • swap(st);//交换两个集合容器

map插入和删除(不允许插入重复key)
  • insert(elem);//在容器中插入元素

map<int,int> m;m.insert(pairint>(m.insert(make_pair(2,20));m.insert(map<int,int)::vlue_type(3,30));m[4]=40;//不建议插入,可以查询
  • clear();//清除所有元素

  • erase(pos);//删除pos迭代器所指的元素,返回下一个元素的迭代器

  • erase(beg,end);//删除区间迭代器[beg,end)的所有元素,返回下一个元素的迭代器

  • erase(key);//删除容器中键值为key的元素

  • map查找和统计

  • find(key);//查找key是否存在,若存在,返回该键的元素的迭代器;若不存在,返回end();

  • f7cf1d37f490a11ff29bb1e3ba86a49f.png

count(key);//统计key元素个数(要么是0要么是1)multimap可以重复插

map容器排序

  • map容器默认排序规则为按照key值,从小到大排序

  • 利用仿函数,可以改变排序规则

e2f1f9933bff920865bb6c6b382a19fe.png

5f86246ecef49c738037030e98b26c73.png


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值