map映射
map可以将任何基本类型映射到任何基本类型
#include<map>
map的定义
map<typename1,typename2>mp;
typename1,为键的类型,即映射前类型
typename2,为值的类型,即映射后类型
map容器元素的访问
1、通过下标访问
2、通过迭代器访问
map<typename1,typename2>::iterator it;
it->first是当前映射的键
it->second是当前映射的值
(map会以键从小到大的顺序自动排序)
map常用函数
(1)find()
find(key)返回键为key的映射的迭代器
(2)erase()
1、删除单个元素
方法一:
mp.erase(it),it为需要删除的元素的迭代器
方法二:
mp.erase(key),key为需要删除映射的键
2、删除多个元素
mp.erase(first,last),first为删除区间的起始迭代器,
last为需要删除区间的末尾迭代器的下一个地址,即删除[first,last)
(3)size()
size()用来获取map中映射的对数
(4)clear()
clear()用来清空map中的所有元素
queue队列
queue队列,实现先进先出的容器
#include<queue>
queue的定义
queue<typename> name;
queue容器中元素的访问
只能通过front()来访问队首元素,back()来访问队尾元素
queue常用函数
(1)push()
push(x)将x进行入队
(2)front()、back()
front()来访问队首元素,back()来访问队尾元素
(3)pop()
pop()令队首元素出队
(4)empty()
empty()检测queue是否为空,返回true则为空,返回false则为非空
(5)size()
size()返回queue内元素的个数
注意:使用front和pop()函数前,需用empty()判断队列是否为空