栈
引入
栈是 OI 中常用的线性数据结构。
栈的操作是按照后进先出的原则进行的,因此,栈通常被称为后进先出(last in first out)表,简称 LIFO 表。
实现
数组模拟栈
int st[N];
st[++st] = var1;
int u = st[*st];
if (*st)
--*st;
*st = 0;
C++ STL
C++ 的 STL 提供了一个容器 stack ,使用前需引入 stack 头文件。
用法
stack<int> q; //创建一个类型为 int 的栈
q.top(); //返回栈顶数据
q.push() //插入传入的参数到栈顶
q.pop() //弹出栈顶
q.empty() //返回是否为空
q.size() //返回元素数量
其他用法
q1 = q2; //将 q2 栈赋值给 q1 栈
题目
洛谷 B3614【模版】栈