#include <stack>
通过二次封装双端队列 (deque) 容器,实现先进后出的栈数据结构。
常用方法
作用 | 用法 | 示例 |
---|---|---|
构造 | stack<类型> stk | stack<int> stk; |
进栈 | .push(元素) | stk.push(1); |
出栈 | .pop() | stk.pop(); |
取栈顶 | .top() | int a = stk.top(); |
查看大小 / 清空 / 判空 | 略 | 略 |
适用情形
如果不卡常的话,就可以直接用它而不需要手写栈了。
另外,vector 也可以当栈用,vector 的 .back()
取尾部元素,就相当于取栈顶,.push_back()
相当于进栈,.pop_back()
相当于出栈。
注意事项
不可访问内部元素!下面都是错误用法!
for (int i = 0; i < stk.size(); i++)
cout << stk[i] << endl;
for (auto ele : stk)
cout << stk << endl;