map映射的基础用法
参考:(5条消息) map 映射_happyaaakkk的博客-CSDN博客_map映射
一、什么是map映射?
定义:map容器是一个键值对key-value的映射。map的key和value可以是任意的数据类型(包括int、double、long long、string、struct、vector、queue等等)。
二、map映射的基本操作
1.map的声明
代码如下(示例):
map<int,int> mp;//定义了一个从int型到int型的映射
map<int,string> mp;//定义了一个从int型到string的映射
2.map的操作
以map<int,string>为例子
1.插入数据
mp.insert(pair<int,string>(2,"bbb"));//第一种插入方式
mp.insert(map<int, string>::value_type (1,"aaa"));//第二种插入方式
mp[3]="ccc";//第三种插入方式
2.容器的属性
map.size()//返回一个映射中元素的个数
map.empty()//若map为空则返回true
map.clear()//清空容器
map.begin()//返回指向map头部的迭代器
map.end()//返回指向map末尾的迭代器
3.访问容器中的元素
方式1.map<int,int>::iterator it;
#include<iostream>
#include<map>
using namespace std;
int main()
{
int a[5];
map<int,int>M;
a[0]=1;M[a[0]]++;
a[1]=2;M[a[1]]++;
a[2]=2;M[a[2]]++;
a[3]=4;M[a[3]]++;
a[4]=1;M[a[4]]++;
map<int,int>::iterator it;
for(it=M.begin();it!=M.end();it++)
cout<<it->first<<' '<<it->second<<endl;//it->first表示映射的前一个元素,it->second表示映射的后一个元素
return 0;
}
方式2(若前一个元素是int)
可用数组遍历
map<int,int> mp;
for(int i=1;i<=n;i++)//数组遍历
cout<<i<<" "<<mp[i]<<endl; //输出后一个元素
4.[]操作符
mp[key]返回映射mp中的自变量key映射到的value的值。
优点:可以通过mp[key]的操作来查询k映射到的value的值并进行修改。
map映射的基础用法相关推荐
- map映射-----基础实验8-1.2 直捣黄龙 (30分)
本题是一部战争大片 -- 你需要从己方大本营出发,一路攻城略地杀到敌方大本营.首先时间就是生命,所以你必须选择合适的路径,以最快的速度占领敌方大本营.当这样的路径不唯一时,要求选择可以沿途解放最多城镇 ...
- [渗透攻防] 二.SQL MAP工具从零解读数据库及基础用法
这是最近学习渗透和网站攻防的文章,希望能深入地学习这部分知识,自己作为一个初学者,前一篇文章从数据库原理解读了防止SQL注入,这篇文章通过SQLMAP工具简单介绍SQL注入及用法.自己仍在慢慢探索网络 ...
- Docker部署及基础用法
Docker基础用法 Docker介绍 什么是Docker OCI&OCF Docker镜像与镜像仓库的关系 Docker对象 Docker工作原理 Docker部署 Docker 事件状态 ...
- 总结关于map的一些基本用法
map 的用法: #include map 是映射,一般用于字符串和整数之间的映射:实现哈希表:字符串之间的映射. map<映射之前的类型,映射之后的类型> 例如:map<char, ...
- STL之map映射(C++)
文章目录 1.map 是一个键值对 (1)有关 key / value (3)底层实现--红黑树 2.map 的常用方法 (1)注意 (2)用法示例 3.map 的应用 反片语(Ananagrams, ...
- Google Map 开发笔记——基础篇(Javascript )
Google Map 开发笔记--基础篇 说明: 一.使用入门: 1.在您需要显示地图的 html 页面嵌入这段 script 2.地图 DOM 元素 3.初始化地图 二.地图画点.线.面 1.标记( ...
- 【Linux防火墙】iptables基础用法及高级用法
文章目录 iptables命令简介 1.语法 2.iptables命令选项输入顺序 3.选项讲解 4.基础用法示例 1.清除规则相关操作 2.查看相关规则及序列号 3.通过查看后的序列号删除规则 4. ...
- 【docker基础用法】
docker基础用法 文章目录 docker基础用法 什么是docker OCI&OCF OCI OCF 断续器 docker架构 docker镜像与镜像仓库 docker对象 安装及使用do ...
- java写mapstate算子,vuex state及mapState的基础用法详解
vuex state及mapState的基础用法详解 2019-01-07 编程之家收集整理的这篇文章主要介绍了vuex state及mapState的基础用法详解,编程之家小编觉得挺不错的,现在分享 ...
最新文章
- 从 0 到 1 实现 React 系列 —— 4.setState优化和ref的实现
- HTML JS正方形轮播,js,html一个页面里面多个页面轮播
- HDU 2629 Identity Card
- 07 | 链表(下):如何轻松写出正确的链表代码?
- HBase在共享经济互联网业务的应用
- 林权抵押贷款政策出台 将实现林业资源变资本
- Python Django开发中XSS内容过滤问题的解决
- Buddy(伙伴)系统分配器之分配page
- 商场客流量统计摄像头设备
- APP测试:禁止APP登录页面截图解决方法
- 9x9九宫格java_9x9九宫格数字填写规律
- ai钢笔工具怎么描线_AI分享:歪龙教你玩转钢笔工具
- HDU 6078 Wavel Sequence(dp)
- 精彩总结:★加密网页破解大法★
- P3-2017级算法第三次上机 B SkyLee逛漫展
- PL/SQL计算质数
- python微信自动发消息_Python使用微信itchat接口实现查看自己微信的信息功能详解...
- 宝马X6和保时捷卡宴,选谁更加高端大气上档次?
- Crysis勒索病毒中毒经历及漏洞查堵[勒索邮箱openpgp@foxmail.com]
- Problem J.果粒橙
热门文章
- win10桌面记事本便签有哪款
- 连接WiFi电脑却无法上网
- sd和sem啥区别_生物统计学-标准差(SD)和标准误(SEM)有何区别.pdf
- 【渝粤教育】电大中专Windows操作系统 (2)_1作业 题库
- php开启sockets模块,linux下开启php的sockets扩展支持实例
- Unix Domain Sockets
- 微信活码系统程序源码
- 2021最新微信影视小程序源码无限代开+搭建详细教程
- 【题解】Luogu-P4774 [NOI2018] 屠龙勇士
- 计算机内部可以用哪两种处理器封装类型,电脑CPU处理器封装形式大盘点