目录
根据前面我所讲的一些STL容器,今天我专门整理出来了一系列的STL合集,大佬们请查收
一·stack(栈)
栈这个知识点在我前面的博文里专门提到过
今天我们来梳理一下栈的STL容器。
首先我们要定义栈
#include<stack>//头文件,当然也可以写万能头
stack<int>s1;//入栈元素为 int 型
stack<string>s2;//入队元素为string型
stack<node>s3;//入队元素为自定义型
STL模板
接下来是栈的一些操作
1.入栈操作
push(x);//将x加入栈中,即入栈操作
2.出栈操作
pop();//出栈操作(删除栈顶),只是出栈,没有返回值
3.返回栈顶元素
top();//返回第一个元素(栈顶元素)
4.求该栈的长度
size();//返回栈中的元素个数
5.栈是否为空
empty();//当栈为空时,返回 true
训练题目
详见:表达式括号匹配 - 洛谷
题目描述
假设一个表达式有英文字母(小写)、运算符(
+
、-
、*
、/
)和左右小(圆)括号构成,以@
作为表达式的结束符。请编写一个程序检查表达式中的左右圆括号是否匹配,若匹配,则输出YES
;否则输出NO
。表达式长度小于 255255,左圆括号少于 2020 个。
输入格式
一行:表达式。
输出格式
一行:
YES
或NO
。