stack
stack的说明
1.stack翻译为栈,是一个先进后出的容器。
2.stack<typename> name; typename可以是任意的基本数据类型或容器
3.使用前先添加头文件#include<stack>,并在头文件下加上using namespace std;
4.可以用stack来模拟一些递归,防止程序对栈内存的限制而导致程序运行出错。(有些题目,如果用普通的函数进行递归,递归层数过深会导致程序运行崩溃;如果用栈模拟,栈所占内存空间很小,则可以避免这方面的问题)
stack的常见用法
1.push(x)将x入栈,时间复杂度为O(1)
2.top()获得栈顶元素,时间复杂度为O(1)
3.pop()弹出栈顶元素,时间复杂度为O(1)
4.empty()检测stack内是否为空,空返回true,非空返回false,时间复杂度为O(1)
5.size()返回stack内元素个数,时间复杂度为O(1)