栈的STL实现

C++ 的标准模板库(STL)提供了设计好的栈容器 std::stack,可以直接调用使用,无需手动实现底层数据结构。

头文件

#include <stack>

基本用法

std::stack<int> s;
 
s.push(10);      // 入栈
s.push(20);
s.push(30);
s.pop();         // 出栈(移除栈顶元素)
int top = s.top();   // 获取栈顶元素
bool empty = s.empty(); // 判空
size_t size = s.size(); // 获取栈中元素个数

特点

  • STL 栈默认基于 deque(双端队列)实现,也可指定底层容器为 vectorlist
  • 提供了简便的 LIFO 操作接口
  • 直接使用即可满足大多数栈应用场景

链接到