STL栈的分析及用法:
- 包含栈的头文件:
#include<stack>
。 - 栈的特点:先进后出,与队列相反
- 定义一个栈:
stack<Type> s;
其中Type
为数据类型。 - 栈的主要操作:
s.push(a);//将a压入栈顶
s.pop();//删除栈顶的元素,但不会返回
s.top();//返回栈顶的元素,但不会删除
s.size();//返回栈中元素的个数
s.empty();//检查栈是否为空,如果为空返回true,否则返回false
- 栈的模板题练习:CF26B
数组模拟栈的分析及用法:
- 难度不大,但比STL要更快。
- 手写模板(具体作用见上面解释):
int q[10000005],top=1;
入栈:q[top++]=n;
出栈:n=q[--top];
查栈顶:n=q[top];
- 原理:用数组模拟栈的操作。
还有有疑问可以在此处寻找更多优秀文章或者在评论中提出哦~