愿你坚持不懈,努力进步,进阶成自己理想的人

—— 2017.09, 写给3年后的自己

STL——栈

栈是一种LIFO(后进先出)的数据结构,可以用来模拟递归、实现倒序等等

STL栈的常用操作

#include <iostream>
// 使用STL栈,需要引入stack头文件
#include <stack>
#include <cstdlib>
using namespace std;

int main() {
    stack<int> s;
    // push方法实现入栈
    s.push(1);
    s.push(3);
    s.push(2);

    // size方法可以获得栈的大小
    cout << "Size: " << s.size() << endl;

    // empty方法判断栈是否为空
    while(!s.empty()) {
        // top方法获得栈顶,但是top并不会移除栈顶,如果要移除栈顶,需要使用pop方法
        cout << s.top() << endl;
        s.pop();
    }

    return 0;
}