map.......
##map
map是c++标准模板库stl的一个关联容器,提供一对一的映射关系
“第一个一”称为关键字(key),别名是first,每个关键字只能在map中出现一次
“第二个一”称为关键字的值(value),别名是second
例如·:建立一个朋友数据库表,保存多个“姓名-电话号码”的对应关系,并保存在某种数据结构中
定义一个map对象
map<string,string>friends;
把朋友以及对应的电话号码保存在friends中:
friends.insert(“Alice”,“12456777”);
friends.insert(“Bob”,“10086”);
friends.insert(“Tom”,13456789");
要查询朋友的号码,通过
cout<<“jack的电话号码是:”<<friends.find(“Jack”);
例:给出一段英文
asafgggghhjkn
统计其中的每个字母出现的次数
定义map<char,int>cnt;//把各字母的出现的次数保存在cnt中
cnt.insert(‘a’,1);
cnt.insert(‘s’,1);
cnt[‘a’]++;
cnt[‘f’]++;//取代insert动作
map以模板(泛型)的方式出现,可以存储任意类型的数据,包括使用者自定义的数据类型
如:
map<int,int>mp;//整型到整型
map<int,string>m2;//整型到字符串型
map<string,stirng>m3;//字符串型到字符串型
map<preson,int>m6;//创建一个key为person型、value为int类型的map对象
在map内部所有的数据都是有序的
map由一颗红黑树实现,这颗树具有对数据自动排序的功能
###插入元素
map<int,string>student;
方式一:用insert函数插入pair
student.insert(pair<int,string>(0,"Zhangsan"));//pair函数构造一个对象,对象由一个整型和一个字符串型组成
方式二:直接赋值
student[10]="lisi";
###查找元素
find()返回一个迭代器,指向查找的元素,找不到,则返回map::end()位置(NULL)
iter=student.find(123);//查找123关键字对应的值if(iter!=student.end())//判断迭代器是否指向end位置
{
cout<<"found,the value is"<<iter->second;
}
else
cout<<"not found"<<endl;
引用方法:
map<int,int>mpl;
int sum=100;
mpl[10]=3;//插入元素
sum+=mpl[10];//mpl中存在关键字10,它的对应值是3,所以sum累加后变为103
map.......相关推荐
- Map的分类和不同的应用场景
java为数据结构中的映射定义了一个接口java.util.Map; 它有四个实现类,分别是HashMap,Hashtable,LinkedHashMap和TreeMap 可能很多人只使用过HashM ...
- java1.8新增超实用Map方法——Map.getOrDefault()和Map.value()方法详解
1. Map.getOrDefault() 翻译一下官方解释: java.util.Map<K, V> V getOrDefault(Object key, V defaultValue) ...
- Go 学习笔记(67)— Go 并发安全字典 sync.Map
1. 并发不安全的 map Go 语言中的 map 在并发情况下,只读是线程安全的,同时读写是线程不安全的. 换句话说,在同一时间段内,让不同 goroutine 中的代码,对同一个字典进行读写操作是 ...
- Python 常用内置函数map、zip、filter、reduce、enumerate
Python 中有许多非常实用的内置函数,通过这些函数我们可以方便的实现某些功能,下面就列举一些常用的内置函数. 1. map() 函数 map() 可以根据提供的函数对指定序列做映射,它接受一个函数 ...
- 将request中的所有参数存放到自定义的map中
/*** <获取参数map>* * @return 参数map* @throws Exception */protected Map<String, Object> getPa ...
- Map再整理,从底层源码探究HashMap
前言 本文为对Map集合的再一次整理.内容包括:Map HashMap LinkedHashMap TreeHashMap HashTable ConcurrentHashMap Map Map< ...
- Java集合详解之Map
一.首先看看集合框架体系图 从图中可以看到,Map接口扩展了Iterator接口,关于Iterator接口详解请移步:Iterator接口详解 二.Map是什么? Map<k,v>使用键值 ...
- 网络模型mAP计算实现代码
网络模型mAP计算实现代码 一.mAP精度计算 这里首先介绍几个常见的模型评价术语,现在假设我们的分类目标只有两类,计为正例(positive)和负例(negtive)分别是: 1)True posi ...
- 2021年大数据常用语言Scala(二十二):函数式编程 映射 map
目录 映射 | map 用法 案例一 案例二 映射 map 集合的映射操作是将来在编写Spark/Flink用得最多的操作,是我们必须要掌握的.因为进行数据计算的时候,就是一个将一种数据类型转换为另 ...
- 2021年大数据常用语言Scala(十八):基础语法学习 Map对象
目录 Map对象 不可变Map 可变Map Map基本操作 Map对象 Map可以称之为映射.它是由键值对组成的集合.在scala中,Map也分为不可变Map和可变Map. 不可变Map 定义 语法 ...
最新文章
- 第五次课:Python 数据类型(一)
- C++中mutable、volatile关键字
- BugkuCTF-Misc:想蹭网先解开密码
- 汇编程序.c到a.out的生命历程
- 让机器学会看图说话:Image Caption任务最新综述
- 信息学奥赛一本通(C++)在线评测系统——基础(一)C++语言—— 1123:图像相似度
- Bean标签范围配置
- Tensorflow从入门到精通之:Tensorflow基本操作
- C++关键字:重学记录
- SQLServer 2012重启服务后,自增1的标识列一次增长了1000左右
- mysql中外键总结_mysql外键的一些总结
- 检测到无效的异常处理程序例程。_异常控制流(1):异常概述和基本类型
- 如何在Word中输入带圈数字1-10的黑底白字和白底黑字的数字字符?
- 计算机网络中atm意思,atm是什么(atm什么意思)
- 简单A/BTest验证图片懒加载效果
- vue rsa加密 php解密,Vue项目中的RSA加解密
- 信号转换芯片-LT8911EXB MIPI CSI/DSI转EDP
- python tk文本框_python图形界面tk 1.5 文本框(Text box | Entry)
- 推荐 7 个牛哄哄的电商项目
- OSChina 周三乱弹 ——学哪种编程语言能保住一头秀发?
热门文章
- 写一份高逼格的简历,有哪些新技能呢?
- 凯撒密码加密解密——Java代码(密码学)
- [NOI2005]瑰丽华尔兹
- [推荐系统] 自己动手写一个推荐系统
- SAM BAM 和 CRAM
- unity 材质球无法编辑_【每天一个Unity技巧】批量修改材质球的主贴图和添加法线贴图...
- 计算机学院指导报告,计算机科学与工程学院举办“国际级大咖面对面指导你撰写高水平论文”专题报告会...
- Caused by: java.lang.ClassNotFoundException: org.aspectj.weaver.tools.PointcutDesignatorHandler
- 操作系统概念笔记——第六章:进程同步
- 【PA2015】【BZOJ4293】Siano