STL 标准模板库
向量排序 sort
#include <algorithm>
可以使用sort,对向量进行排序1
2vector<int> v;
sort(v.begin(),v.end());
这里放入sort的是v.begin()
和v.end()
;
向量删除 erase
移除元素
remove the element present at position
v.erase(v.begin()+4);
(erases the fifth element of the vector v)
移除向量里的第五个元素
Removes the elements in the range from start to end inclusive of the start and exclusive of the end.v.erase(v.begin()+2,v.begin()+5);
从第三个到第五个的元素全部删除
(erases all the elements from the third element to the fifth element.)
集合 set
头文件:#include <set>
定义一个集合set<int> s;
存入元素:s.insert(val);
删除元素 s.erase(val);
创建一个迭代器:set<int>::interator itr=s.find(val);
如果找不到则迭代器会等于 s.end();
创建一个map 查找迭代器map<string,int>::iterator itr=m.find(val);
//Gives the iterator to the element val if it is found otherwise returns m.end() .
Deque-STL 双端队列
双端队列模板std::depue<value_type>
deque<int> mydeque;
size:
int length = mydeque.size();
存入数据:mydeque.push_back(1);
push element at the end;
mydeque.push_front(2);
push element at the beginning;
推出数据:
mydeque.pop_back();
pop element from the end;
mydeque.pop_front();
pop element from the beginning;
查看队列是不是空的:
mydeque.empty();
如果队列是空的,就会返回 true;