AcWing
  • 首页
  • 题库
  • 题解
  • 分享
  • 问答
  • 活动
  • 应用
  • 吐槽
  • 登录/注册

关联型容器map

作者: 作者的头像   贺谦 ,  2020-12-29 00:52:20 ,  阅读 91


-1


一、 map

  • 内存结构:红黑树——平衡搜索二叉树
  • map 的特性:所有元素会根据元素的键值(自动被排序)

    自动排序是【搜索树】的性质

1.1 pair

  • pair对应的是key-val对
  • map 不允许两个元素拥有相同的键值(multimap是可以的)
  • 【插入元素】是通过key来插入的

1.2 插入insert

  • mis.insert(pair<int, string>(6, "hlhd"));
  • mis[6] = "hlhd"

1.3 查找find

用法1:
- mis.insert(mis.find(100), pair<int, string>(4, "uyr"));

用法2:

auto findItr = mis.find(40);
if(findItr != mis.end()) cout<<"find"<<endl;
else cout<<"find none"<<endl;

auto find = mis.find(6);
if(find != mis.end()) mis.erase(find);

1.4 遍历

  • 迭代器
  • map<int, string>::iterator itr;
for (itr = mis.begin(); itr != itr.end(); itr ++
{
    cout << itr->first << " " << itr->second << endl;
    cout << (*itr).first << " " << (*itr).second << endl;
}

0 评论

你确定删除吗?

© 2018-2021 AcWing 版权所有  |  京ICP备17053197号-1
联系我们  |  常见问题
AcWing
请输入登录信息
更多登录方式: 微信图标 qq图标
请输入绑定的邮箱地址
请输入注册信息