栈是基本的数据结构之一,特点是"先进后出"
头文件#include<stack>
操作 | 说明 |
---|---|
stack<Type>s |
定义栈,Type为数据类型,例如int,float,char等 |
s.push( item ) | 把元素 item 放到栈顶 |
s.top( ) | 返回栈顶的元素 |
s.pop( ) | 删除栈顶元素 |
s.size( ) | 返回栈中的元素个数 |
s.empty( ) | 判断栈是否为空 如果为空返回true,否则返回false |
爆栈问题
栈需要用空间存储,如果深度太大or存进栈的数组太大,就会超过系统为栈分配的空间导致爆栈
两种解决方法:
- 在程序中调大系统栈,这种方法依赖系统和编译器
- 手工写栈