1.vector

构造

vector <int> v;

基本操作

v.begin()             //指向迭代器中第一个元素。
v.end()               //指向迭代器中末端元素的下一个,指向一个不存在元素。
v.push_back(elem)     //在尾部加入一个数据。
v.pop_back()          //删除最后一个数据。
v.capacity()          //vector可用空间的大小。
v.size()              //返回容器中数据个数。
v.empty()             //判断容器是否为空。
v.front()             //传回第一个数据。
v.back()              //传回最后一个数据,不检查这个数据是否存在。
v.at(index)           //传回索引idx所指的数据,如果idx越界,抛出out_of_range。
v.clear()             //移除容器中所有数据。
v.erase(iterator)     //删除pos位置的数据,传回下一个数据的位置。
v.erase(begin,end)    //删除[beg,end)区间的数据,传回下一个数据的位置。注意:begin和end为iterator
v.insert(position,elem)      //在pos位置插入一个elem拷贝,传回新数据位置。
v.insert(position,n,elem)    //在pos位置插入n个elem数据,无返回值。
v.insert(position,begin,end) //在pos位置插入在[beg,end)区间的数据,无返回值。

  

2.priority_queue

构造

priority_queue<int>que;                             //采用默认优先级构造队列最大值先出队
priority_queue<int,vector<int>,greater<int> >que3;  //最小值先出队
priority_queue<int,vector<int>,less<int> >que4;     //最大值先出队

基本操作

que.empty()   //判断一个队列是否为空
que.pop()     //删除队顶元素
que.push()    //加入一个元素
que.size()    //返回优先队列中拥有的元素个数
que.top()     //返回优先队列的队顶元素

  

3.map

构造

map<int, string> mp;

基本操作

mp.begin()          //返回指向map头部的迭代器
mp.clear()         //删除所有元素
mp.count()          //返回指定元素出现的次数
mp.empty()          //如果map为空则返回true
mp.end()            //返回指向map末尾的迭代器
mp.equal_range()    //返回特殊条目的迭代器对
mp.erase()          //删除一个元素
mp.find()           //查找一个元素
mp.get_allocator()  //返回map的配置器
mp.insert()         //插入元素
mp.key_comp()       //返回比较元素key的函数
mp.lower_bound()    //返回键值>=给定元素的第一个位置
mp.max_size()       //返回可以容纳的最大元素个数
mp.rbegin()         //返回一个指向map尾部的逆向迭代器
mp.rend()           //返回一个指向map头部的逆向迭代器
mp.size()           //返回map中元素的个数
mp.swap()           //交换两个map
mp.upper_bound()    //返回键值>给定元素的第一个位置
mp.value_comp()     //返回比较元素value的函数

4.queue

构造

queue<int> q;

基本操作

q.push(num)   //入列,插入队列的末端。
q.empty()     //判断队列是否为空
q.size()      //获取队列中的元素个数
q.back()      //访问队列尾元素

  

5.stack

构造

stack<int> s;
stack<int> c1(c2);  复制stack

基本操作

s.top()        //返回栈顶数据
s.push(num)   //在栈顶插入数据
s.pop()       //弹出栈顶数据
s.empty()     //判断栈是否为空
s.size()      //返回栈中数据的个数

  

6.set

构造

set<int> s;

基本操作

s.insert(num)             //把元素插入到集合中,同一元素不会重复插入
s.inset(first,second)     //将定位器first到second之间的元素插入到set中,返回值是void
s.erase(6)                //删除键值为6的元素
s.find(6)                 //查找键值为6的元素,如果没找到则返回end()
s.begin()                //返回set容器的第一个元素
s.end()                //返回set容器的最后一个元素
s.clear()               //删除set容器中的所有的元素
s.empty()              //判断set容器是否为空
s.max_size()            //返回set容器可能包含的元素最大个数
s.size()              //返回当前set容器中的元素个数
s.rbegin()            //返回的值和end()相同
s.rend()              //返回的值和rbegin()相同
s.count()                //用来查找set中某个某个键值出现的次数,一般用于判断某一键值是否在set出现过
erase(iterator)          //删除定位器iterator指向的值
erase(first,second)      //删除定位器first和second之间的值(不包括second)
erase(key_value)         //删除键值key_value的值
lower_bound(key_value)   //返回第一个大于等于key_value的定位器
upper_bound(key_value)   //返回最后一个大于等于key_value的定位器

  

7.deque

构造

deque<int> c;
deque<int> c1(c2);      //复制deque
deque<int> c(n, elem);  //创建一个含有n个elem拷贝的deque

基本操作

c.assign(beg, end);  //将beg-end区间中的值赋值给c
c.assign(n, elem);   //将n个elem的拷贝赋值给c
c.at(idx);       //返回idx位置所指数据
c.front();      //返回第一个数据
c.back();      //返回最后一个数据
c.begin();     //返回指向第一个数据的迭代器
c.end();       //返回指向最后一个数据的下一个位置的迭代器
c.rbegin();    //返回逆向队列的第一个数据
c.rend();      //返回指向逆向队列的最后一个数据的下一个位置的迭代器
c.push_back(elem);  //在尾部加入一个数据
c.push_front(elem);  //在头部插入一个数据
c.insert(pos, elem);  //在pos位置插入一个elem拷贝,返回新数据位置
c.insert(pos, n, elem);  //在pos位置插入n个elem数据,无返回值
c.insert(pos, beg, end);  //在pos位置插入在beg-end区间的数据,无返回值
c.pop_back();           //删除最后一个数据
c.pop_front();         //删除头部数据
c.erase(pos);         //删除pos位置的数据,返回下一个数据的位置
c.erase(beg, end);    //删除beg-end区间的数据,返回下一个数据的位置
c.empty();            //判断容器是否为空
c.max_size();         //返回容器中最大数据的数量
c.resize(num);       //重新指定队列的长度
c.size();            //返回容器中实际数据的个数
c1.swap(c2)          //将c1和c2元素互换

  

转载于:https://www.cnblogs.com/Hyouka/p/7231140.html

常用STL整理 (施工中 2017.8.11更新)相关推荐

  1. [svc]linux常用手头命令-md版-2017年11月12日 12:31:56

    相关代码 curl命令-网站如果3次不是200或301则报警 curl -o /dev/null -s -w "%{http_code}" baidu.com -k/--insec ...

  2. 一张图看懂2017双11中的网络产品和技术

    摘要: 大家都知道,2017年双11又创造了新纪录,全天交易额1682亿,交易峰值32.5万笔/秒,支付峰值25.6W笔/秒,狂欢的背后是极其复杂庞大的技术系统,其中就有大量阿里云云计算相关的产品和技 ...

  3. Windows下bat批处理脚本常用场景整理,持续更新中。。。

    Windows下bat批处理脚本常用场景整理,持续更新中... 一.Winodws下使用bat脚本对结果进行筛选 例如:在筛选出来的结果中,筛选是否有"$G"字段 adb shel ...

  4. POWER PCB(PADS LAYOUT)中常用快捷键整理大全

    POWER PCB(PADS LAYOUT)中常用快捷键整理大全 488阅读凡亿教育关注 一.原理图库 P/P:画元器件引脚 P/A:画弧线P/L:画直线 P/A:画矩形 T/C:创建一个新的元器件 ...

  5. python常用函数-Python 学习:常用函数整理

    整理Python中常用的函数 一,把字符串形式的list转换为list 使用ast模块中的literal_eval函数来实现,把字符串形式的list转换为Python的基础类型list from as ...

  6. JavaScript一些常用 API整理汇总

    JavaScript一些常用 API整理汇总 Array new Set() 数组去重 const arr = [3,4,4,5,4,6,5,7]; console.log(new Set(arr)) ...

  7. 常用代码整理(重要)

    常用代码整理: 1.判断邮箱格式是否正确的代码: //利用正则表达式验证 -(BOOL)isValidateEmail:(NSString *)email { NSString *emailRegex ...

  8. mysql数据库 常用函数_《MySQL数据库》常用函数整理

    原标题:<MySQL数据库>常用函数整理 以下内容,是我整理出来的比较常用的字符串函数,数值函数,日期函数. 第一类:字符串函数 1.conv(n,from_base,to_base):对 ...

  9. 2017双11交易系统TMF2.0技术揭秘,实现全链路管理

    摘要: 本文是<2017双11交易系统TMF2.0技术揭秘>演讲整理,主要讲解了基于TMF2.0框架改造的交易平台,通过业务管理域与运行域分离.业务与业务的隔离架构,大幅度提高了业务在可扩 ...

最新文章

  1. uniapp中vuex状态管理
  2. 【BZOJ4764】弹飞大爷 LCT
  3. js 转换数字为decmail_BigDecmail(解决java计算精度问题)
  4. 6、struts.properties配置详解
  5. [css] 你有没有自己写过一套UI库?说下遇到哪些难点?
  6. 下如何查看mysql表单_Navicat 教程:如何进行表单查看
  7. 洛谷P1216 [USACO1.5][IOI1994]数字三角形 Number Triangles
  8. 过滤DataTable中的指定字段重复的行
  9. 云服务器预装什么系统好,云服务器预装什么系统好
  10. 【图像修复】基于matlab GUI约束最小二乘方滤波图像复原【含Matlab源码 852期】
  11. UE4编辑器下Tick的实现
  12. 【Python从入门到精通】(一)就简单看看Python吧
  13. Android多窗口分屏(原生方法)
  14. 6.9对一个工作簿中的所有工作表分别求和并将求和结果写入固定单元格
  15. 关于日历点击跳转以及短信点击跳转到指定联系人界面的一些记录
  16. 数据库上机实验一、二
  17. 【大学生英语竞赛】备考应考经验 + 备考资料
  18. OpenCV信用卡识别
  19. 树莓派利用python控制57步进电机
  20. #71 go-ini 配置库评析 by 无闻(unknwon)【 Go 夜读 】

热门文章

  1. php执行cmd/shell命令 木马小后门
  2. powershell自动化操作AD域、Exchange邮箱系列(2)—环境要求、搭建及初步演示
  3. ab 服务器压力测试工具 使用详解
  4. 脚本_vnote同步到hexo步骤[博]
  5. 子进程和父进程的结论_Python的多进程不是随便用滴!
  6. $_server[#039;php_auth_user#039;],ecshop中$user ($GLOBALS[#039;user#039;])对象在哪里定义的...
  7. docker 安装mysql_安装docker并使用docker安装mysql
  8. sql 可以多个分组吗_你知道吗?罗非鱼的品种多达100多个,不单是食用鱼也可以是观赏鱼...
  9. hnu暑期实训之日历问题
  10. html email输入框,html5给文本框实现email域名自动完成效果