1.vector<type>vr
vr.back(); //返回最后一个元素
vr.front(); //返回第一个元素
vr[i]; //返回第i个元素
vr.clear(); //清空
vr.empty(); //是否为空
vr.pop_back(); //删除a向量的最后一个元素
vr.erase(a.begin()+n,a.begin()+m); //删除的元素从n算起(包括它)一直到m(不包括它)
vr.push_back(n); //在vr的最后一个向量后插入一个元素,其值为n
vr.insert(a.begin()+i,5); //在vr的第i个元素(从第0个算起)的位置插入数值5
vr.insert(a.begin()+i,3,5); //在vr的第i个元素(从第0个算起)的位置插入3个数,其值都为5
(vr.insert(a.begin()+1,b+3,b+6); //b为数组,在a的第1个元素(从第0个算起)的位置插入b的第3个元素到第5个元素(不包括b+6),如b为1,2,3,4,5,9,8 ,插入元素后为1,4,5,9,2,3,4,5,9,8)
vr.size(); //元素个数;
2.map<key,value>mp;
mp.size()//元素个数
mp.empty()//是否为空
mp.clear()//清空
mp.begin()//返回mp中的min迭代器
mp.end()//返回mp中的max的后一个(相当于NULL)
mp.find(key)//找key返回iterator,若无,返回mp.end()‘O(logn)’
mp.erease(key)//删掉该key和其对应的value
3.stack<type>st;
st.top()//返回栈顶元素
st.push(constT&obj/T&&obj)//插入元素
st.pop()//弹出元素
st.size()//元素个数
st.empty()//是否为空
4.queue<type>q;
q.push(item)//入队
q.pop()//出队
q.front()//返回队首元素
q.size()//元素个数
q.empty()//是否为空
5.priority_queue<Type,Container,Functional>
(类型,容器‘默认vector’,比较方法)
例:
priority_queue<int>qq//默认大根堆,输出顺序由大到小
(等价于priority_queue<int,vector<int>,less<int>>qq)
priority_queue<int,vector<int>,greater<int>>qq//小根堆,输出顺序由小到大