stack
#include<stack>
using namespace std;
定义:
stack<int> st;
stack常用函数:
st.push(i); //将元素i压入栈st
st.top(); //取栈st栈顶元素
st.pop(); //将栈st栈顶元素弹出
st.empty(); //检验栈st是否为空
st.size(); //返回栈st内元素个数
stack用途:模拟递归。
queue
#include<queue>
using namespace std;
定义
queue<int> q;
queue常用函数:
q.push(i); //将x进入队列
q.pop(); //令队首元素出对
q.front(); //获得队首元素
q.back(); //获得队尾元素
q.empty(); //判断队空
q.size(); //返回队列q内元素个数
queue用途:广度优先搜索
map
#include<map>
using namespace std;
定义
map<int, int> mp;
map常用函数:
mp.find(key); //
mp.erase(it); //删除单个元素,it为需要删除元素的迭代器
mp.erase(key); //删除单个元素,key为欲删除的映射的键
mp.erase(first, last);
//删除区间内元素,first为需要删除的区间的其实迭代器,last为需要删除区间末尾迭代器的下一个地址
mp.size(); //获得map中映射的对数
mp.clear(); //清空map中的所有元素
map用途:建立键值关系