介绍

  1. 栈的元素遵循“先进后出”的原则。
  2. 只能在栈顶插入和删除元素。

概念

  1. 栈顶和栈底:允许元素插入与删除的一端称为栈顶,另一端称为栈底。
  2. 入栈(压栈):栈的插入操作。
  3. 出栈(弹栈):栈的删除操作。

常用操作

stack<int> s;   //定义int数据类型的栈容器s
s.empty();      //如果栈为空则返回true, 否则返回false
s.size();       //返回栈中元素个数
s.top();        //返回栈顶元素,但不会删除
s.pop();        //删除栈顶元素
s.push();       //将元素插入栈顶

代码示例

#include<bits/stdc++.h>
using namespace std;
int main(){
    stack<int> s;
    for(int i=0;i<10;i++){
        s.push(i);
    }
    cout<<s.empty()<<endl<<s.size()<<endl;
    for(int i=0;i<10;i++){
        int a = s.top();
        cout<<a<<endl;
        s.pop();
    }
    return 0;
}

代码输出

0
10
9
8
7
6
5
4
3
2
1
0


一只小菜鸡