C++ stack
介绍
Stack(栈)是C++ STL(标准模板库)提供的一种容器适配器,它实现了一个后进先出(LIFO,Last In First Out)的数据结构。想象一堆盘子,你只能从顶部添加或移除盘子,这就是栈的工作原理。在C++中,stack作为适配器,它是基于其他容器(如deque、vector或list)实现的。
备注
默认情况下,C++ stack基于deque容器实现,但你可以使用不同的底层容器来创建stack。
基本特性
栈的主要特点:
- 后进先出(LIFO):最后放入的元素将首先被取出
- 只能访问栈顶元素:无法直接访问栈内的其他元素
- 不支持迭代器:不能像其他容器一样使用迭代器遍历元素
- 不提供随机访问:不能通过索引访问栈中的元素
头文件和命名空间
要使用stack,需要包含以下头文件:
#include <stack>
并且stack位于std命名空间中:
using namespace std; // 或者使用 std::stack