· · 个人记录

栈(stack),主要操作为入栈和出栈(push,pop),结构如同一个羽毛球桶,规律为先入先出,后入后出,与队列的规则恰好相反。
例如:
入栈:a_1,a_2,a_3,a_4,a_5
较为合理的出栈序列:

a_5,a_4,a_3,a_2,a_1;

如果入栈后直接出栈;序列为:

a_1,a_2,a_3,a_4,a_5;

可以使用数组来模拟出栈入栈的过程,不过c++头文件中提供了栈的类型stack
栈和队列一样,有几种相应的操作:

#include<bits/stdc++.h>
using namespace std;
int n;   //输入个数
int stackNumbers[114];  //输入栈前的存储
stack<int> _stack;   //定义栈:stack<类型> 栈名称
int main(){
    cin>>n;   //不多说了
    for(int i=0;i<n;i++){
        cin>>stackNumbers[i];      //输入 
        _stack.push(stackNumbers[i]);     //入栈:栈名.push(栈类型的变量/值)
    }
    while(!_stack.empty()){               //求给定栈是否为空栈:栈名.empty(),返回值为bool值 
        cout<<_stack.top();        //求栈顶:栈名.top()
        cout<<endl;
        _stack.pop();                 //出栈:栈名.pop()         
    }      
}