C++ multimap实践
目录
- 1 insert()
- 2 equal_range()
multimap
表示有序的键值对,它在 map
的基础上多了:允许重复的key,甚至是重复的(key:value)。
头文件为#include map
。
1 insert()
插入操作为:
a.insert({key,val}) //插入一个键值对
a.insert({{key1, val1},{key2, val2}}) //插入多个键值对
实例代码为,
#include <iostream>
#include <map>using namespace std;int main() {multimap<int, int> m;//m[1] = 1;这样的赋值方式对于multimap是不被允许的,会报错m.insert({5,5});m.insert({1,1});m.insert({1,1});m.insert({1,2});m.insert({2,2});m.insert({3,3});m.insert({4,4});m.insert({{6,6},{7,7}});for (auto [key, val] : m) {cout << "key = " << key << ", val = " << val << endl;}return 0;
}
代码输出为:
key = 1, val = 1
key = 1, val = 1
key = 1, val = 2
key = 2, val = 2
key = 3, val = 3
key = 4, val = 4
key = 5, val = 5
key = 6, val = 6
key = 7, val = 7
2 equal_range()
auto range = a.equal_range(key); //返回哈希表中键等于key的迭代器pair
//即std::pair<const_iterator,const_iterator>
代码如下,
#include <iostream>
#include <map>using namespace std;int main() {multimap<char, int> m;m.insert({{'a', 1}, {'b', 2}, {'b', 3}, {'b', 4}, {'c', 5}});auto range = m.equal_range('b');for (auto it = range.first; it != range.second; it++) {cout << "key = " << it->first << ", value = " << it->second << endl;}return 0;
}
程序输出为,
key = b, value = 2
key = b, value = 3
key = b, value = 4
更多信息:待更新。。。
C++ multimap实践相关推荐
- 亿级工具类APP头条数据聚合优化实践
亿级工具类APP头条数据聚合优化实践 业务介绍 中华万年历的头条数据是根据推荐算法聚合而成的数据,包括ALS算法数据.用户画像数据.时效数据.非时效数据.定投数据.惊喜数据.频道数据.热榜数据.用户相 ...
- 红黑树探险:从理论到实践,一站式掌握C++红黑树
红黑树揭秘:从理论到实践,一站式掌握C++红黑树 引言 为什么需要了解红黑树? 红黑树在现代C++编程中的应用场景 树与平衡二叉搜索树 树的基本概念: 二叉搜索树的定义与性质: 平衡二叉搜索树的特点与 ...
- 【编程实践】Google Guava 极简教程
前言 Guava 工程包含了若干被 Google 的 Java 项目广泛依赖 的核心库,我们希望通过此文档为 Guava 中最流行和最强大的功能,提供更具可读性和解释性的说明. 适用人群 本教程是基础 ...
- 【C++】STL map 与 multimap 用法和区别
参考: https://blog.csdn.net/shuzfan/article/details/53115922 https://www.nhooo.com/cpp/cpp-map-swap-fu ...
- 七种轮询介绍(后附实践链接)
我有一个朋友- 做了一个小破站,现在要实现一个站内信web消息推送的功能,对,就是下图这个小红点,一个很常用的功能. 不过他还没想好用什么方式做,这里我帮他整理了一下几种方案,并简单做了实现. 案例下 ...
- Golang TDD实践报告:快速排序Quick Sort
Golang TDD实践报告:快速排序Quick Sort [阅读时间:约5分钟] 0.项目需求 1.编写符合项目输入输出的一个测试 2.尝试运行测试 3.先使用最少的代码来让失败的测试先跑起来 4. ...
- 编写高性能Java代码的最佳实践
编写高性能Java代码的最佳实践 摘要:本文首先介绍了负载测试.基于APM工具的应用程序和服务器监控,随后介绍了编写高性能Java代码的一些最佳实践.最后研究了JVM特定的调优技巧.数据库端的优化和架 ...
- 【K8S实践】关于Kubernetes Dashboard的实践学习
前言: 陆陆续续,学k8s一个月了,从开始看docker容器书,视频,怎么都无法上手:到后来闷着头实践地傻瓜式操作:到今天整个完全串通好!感觉到学习也是一段深刻的成长经历! 过程: 这个过程中使用的工 ...
- 提高期——SLA实践指导秘籍
前言: 第二遍看提高期的SLA文档,开始提高期的第一个项目. 感受: 这个秘籍和自己看的<番茄工作法图解>非常像,写作风格和内容量上. 从大脑的功能分析,为什么要这样做.我们的学习方法符合 ...
最新文章
- 揭秘百度微服务监控:百度游戏服务监控的演进
- 开发者们的迷茫期,该怎么看破?
- Realm Mobile Platform添加水平可扩展性,支持遗留数据源和复制
- React Native JSBundle拆包之原理篇
- 用python画漂亮图片-python结合G2绘制精美图形
- tableau必知必会之如何将 Tableau Server 从 Windows 迁移到 Linux 的方法
- ViewPager实现引导界面以及进入下一个activity解决办法
- 搜狐视频怎么下载到电脑
- 网页跳转-重定向-102.课时102.【Django视图高级】重定向详解(Av61533158,P102)
- localhost,127.0.0.1,本机IP,三者的区别
- A股收盘:深证区块链50指数跌1.75%,*ST群兴、亚联发展涨停
- MATLAB-阶乘运算
- python 安装PyQt4
- 【深度学习】《动手学深度学习》环境配置
- ajax 上传图片进度条,ajax实现图片上传与进度条
- 当我跑步时我在想什么读后感
- 第六讲 复数和复指数
- Linux文件编辑命令详细整理
- asp.net新闻采集(wyz)
- 【编程游戏】贺岁霓虹灯。(参观366楼xiuyouxu的霓虹灯)
热门文章
- mysql 同表子查询_MySQL 表子查询
- CGD: Multi-View Clustering via Cross-View Graph Diffusion
- 把财务分析明白的BI软件有哪些?
- 图片设置宽高,图片变模糊问题
- java graphicsenvironment_如何确定GraphicsEnvironment是否存在
- LR敏捷软件平台v7开发示例,功能设计模块化,UI特色明显(长文)
- 3路DI计数器,2路PWM输出,Modbus TCP协议,WiFi模块WJ165
- 在树莓派上编译和使用OpenDDS
- 程序员32岁前跳槽大多数看薪资,那里福利好去那里,32岁后请慎重
- 互联网图片文字识别 互联网图片识别 彩信识别 彩信图片文字识别