栈 (Stack)

后进先出 (LIFO) 的线性数据结构

基本概念

栈(Stack)是一种特殊的线性表,只能在表的一个端点(称为栈顶 Top)进行插入和删除操作。

核心特性:
  • LIFO (Last In First Out):最后进入的元素最先出来。
  • Push (入栈):将元素放到栈顶。
  • Pop (出栈):移除栈顶元素。

交互演示

空栈

C++ 代码对照

// 准备操作...

操作日志

STL std::stack 用法

#include 
#include 

int main() {
    std::stack s;
    
    s.push(10);  // 入栈 10
    s.push(20);  // 入栈 20
    
    std::cout << s.top() << std::endl;  // 输出 20
    
    s.pop();     // 20 出栈
    
    if (!s.empty()) {
        std::cout << "Stack size: " << s.size() << std::endl;
    }
    
    return 0;
}