STL常用容器使用方法
在程序头部使用#include<stack>来引入STL的stack容器,然后使用stack<int> s语句来声明一个管理整型数据的容器s。
stack常用成员函数:
push(x) 将元素x压入栈中
pop() 将栈顶元素取出并删除
top() 将栈顶元素取出但不删除
size() 返回栈内元素数量
empty() 判断栈是否为空
在程序头部使用#include<queue>来引入STL的queue容器,然后使用queue<int> q语句来声明一个管理整型数据的容器q。
queue常用成员函数:
push(x) 将元素x加入队列中
pop() 将队首元素取出并删除
front() 将队首元素取出但不删除
size() 返回队列的元素数量
empty() 判断队列是否为空
在程序头部使用#include<vector>来引入STL的vector容器,然后使用vector<int> v语句来声明一个管理整型数据的容器v。
vector常用成员函数:
size() 返回向量的结点数量
begin() 返回指向向量开头的迭代器
end() 返回指向向量末尾的迭代器
push_back(x) 在向量末尾添加结点x
pop_back(x) 删除向量末尾的结点x
insert(p,x) 在第p个位置插入结点x
erase(p) 删除第p个位置的结点
clear() 清空向量中所有结点
在程序头部使用#include<list>来引入STL的list容器,然后使用list<int> l语句来声明一个管理整型数据的双向链表容器l。
list常用成员函数:
size() 返回链表的结点数量
begin() 返回指向链表开头的迭代器
end() 返回指向链表末尾的迭代器
push_front(x) 在链表开头添加结点x
push_back(x) 在链表末尾添加结点x
pop_front(x) 删除链表开头的结点x
pop_back(x) 删除链表末尾的结点x
insert(p,x) 在第p个位置插入结点x
erase(p) 删除第p个位置的结点
clear() 清空链表中所有结点
STL常用容器使用方法的更多相关文章
- STL常用结构与方法简明总结
C++常用的数据结构 序列式容器 vector(向量.有序数列),list(双向链表),deque(双端队列) 适配器容器 stack(栈),queue(队列) 关联式容器 map(映射.键值对二叉树 ...
- C++ STL常用容器浅析
首先要理解什么是容器,在C++中容器被定义为:在数据存储上,有一种对象类型,它可以持有其它对象或指向其它对象的指针,这种对象类型就叫做容器.简单来说 容器就是包含其他类的对象们的对象,当然这种(容器) ...
- 【Example】C++ STL 常用容器概述
前排提醒: 由于 Microsoft Docs 全是机翻.所以本文表格是我人脑补翻+审校. 如果有纰漏.模糊及时评论反馈. 序列式容器 序列容器是指在逻辑上以线性排列方式存储给定类型元素的容器. 这些 ...
- C++中STL常用容器的优点和缺点
我们常用到的STL容器有vector.list.deque.map.multimap.set和multiset,它们究竟有何区别,各自的优缺点是什么,为了更好的扬长避短,提高程序性能,在使用之前需要我 ...
- 【C++】STL常用容器总结之五:双端队列deque
6.双端队列deque 所谓的deque是”double ended queue”的缩写,双端队列不论在尾部或头部插入元素,都十分迅速.而在中间插入元素则会比较费时,因为必须移动中间其他的元素.双端队 ...
- c++ STL 常用容器元素类型相关限制 指针 引用
c++ 的 STL 中主要有 vector , list, map, set , multimap,multiset 这些容器完全支持使用内置类型和指针(指针注意内存泄露问题). 就是说乱用智能指针 ...
- C++中STL常用容器的区别(转)
我们常用到的STL容器有vector.list.deque.map.multimap.set和multiset,它们究竟有何区别,各自的优缺点是什么,为了更好的扬长避短,提高程序性能,在使用之前需要我 ...
- STL常用容器用法
-1. 本文章中所有函数原型均为C++98的标准. 通用的操作 //遍历容器--以vector,map为例 vector<int> vt; map<int,int> mp; f ...
- c++ STL常用算法使用方法
#include <string> #include <vector> #include <functional> #include <iostream> ...
随机推荐
- 企业wiki之confluence安装部署(linux)及其破解
系统环境(虚拟机) centos6.5 2G运行内存,30g硬盘,cpu最好也分配两个或多个,因为我在安装过程中发现很卡,cpu占用率几乎占满 需要用到的安装包和文件可以在这里找 链接:https ...
- linux(Centos7)服务器硬件改动,进入Emergency模式
例如移走了某块硬盘后,直接开机就会进入该模式 这是因为/etc/fstab没有正确执行的原因 解决方法: 1)在该模式下输入root密码进入单用户模式(我没试过,不知道行不行,如果不行的话就用忘记ro ...
- ~ # himm -sh: himm: not found的解决方法
ls /bin发现没有himm 海思根文件默认没有把himm工具集成在bin里,但是在sdk中 /home/swann/Hi3516CV300_SDK_V1.0.3.0/osdrv/tools/boa ...
- 自动化部署--shell脚本--3
登录gitlab第一次登录gitlab,需要为root用户修改密码,root用户也是gitlab的超级管理员.http://192.168.58.11设置密码是gitlab 密码不够长,重新设置下,设 ...
- Node 内存控制
Node 只能使用部分内存,原因: node 基于 V8 构建,V8 的内存管理机制限制了内存的用量. 在实际的使用中,不小心触碰到这个内存界限,会造成进程退出. V8 是通过堆来进行内存分配的:在代 ...
- Jmeter -- 属性和变量
一.Jmeter中的属性: 1.JMeter属性统一定义在jmeter.properties文件中,我们可以在该文件中添加自定义的属性 2.JMeter属性在测试脚本的任何地方都是可见的(全局),通常 ...
- Python 基础语法+简单地爬取百度贴吧内容
Python笔记 1.Python3和Pycharm2018的安装 2.Python3基础语法 2.1.1.数据类型 2.1.1.1.数据类型:数字(整数和浮点数) 整数:int类型 浮点数:floa ...
- 几种always块的形态
几种always块的形态 1.时钟沿触发与复位触发 2.使能触发 3.预设触发 4.时序寄存器与锁存触发 5.组合逻辑
- InfluxDB 常用命令
查表: http://192.168.0.200:8086/query?q=select+*+from+telegraf..cpu http://192.168.0.200:8086/query?q= ...
- docker-compose网络设置之networks
networks使用方式之官网教程 官网的docker-compose.yml参考文档:Compose file version 3 reference 较为准确的中文翻译版:Compose file ...