vector数组
定义:
vector 是C++ STL的一个容器类,
用于存储和管理的动态数组。
操作
- 定义
vector<数据类型、结构体>名称 vector<int>a;- 添加元素
(1)尾插
a.push_back(x)(2)删除
a.pop_back()// 无参数(3)访问元素
intx=a[0]// 通过下标访问前提所以内容(4) 大小
intsize=a.size()// 获取当前元素个数(5) 清空
a.clear()(6) 判断是否为空
a.empty()(7) 初始化
vector<int>b(n,0)// 创建一个包含n个元素的vector,初始值为0vector<int>c(b)- 二维
(1) 初始化
vector<vector<int>>d(n,vector<int>(m,0))// 创建一个n行,m列的二维vector,初始值为0(2) 查找末尾元素
d.back()(3) 查找首个元素
a.front()queue队列
定义:
queue 是C++ STL的一个容器类,
特性是先进先出,后进后出。
操作
- 定义
queue<数据类型、结构体>名称 queue<int>q;- 元素操作
(1)尾部插入
q.push(x)// x 为插入元素(2)头部弹出
q.pop()//pop里没有参数(3)查看头部元素
q.front()(4)查看尾部元素
q.back()(5)查看队列长度
q.size()(6)查看队列是否为空
q.empty()「注意」:该函数空返回true,非空返回false。所以我们判断是否非空时一般这么写:
if(!q.empty()){// TODO}stack栈
定义:
stack 是C++ STL的一个容器类,
特性是先进后出,后进先出。
操作
- 定义
stack<数据类型、结构体>名称 stack<int>t;- 元素操作(关于栈我们一般称顶部和底部)
(1)顶部插入
t.push()(2)顶部弹出
t.pop()(3)查看顶部元素
t.top()(4)查看栈长度
t.size()(5)查看栈是否为空
t.empty()「注意」:该函数空返回true,非空返回false。所以我们判断是否非空时一般这么写:
if(!t.empty()){// TODO}