1. 栈的基本概念
栈(Stack)是一种常见的数据结构,它是一种只能在一端进行插入和删除操作的特殊线性表。栈具有后进先出(Last In First Out, LIFO)的特点,即最后插入的元素最先被删除。
可以将栈想象成一叠盘子,我们往盘子堆上添加盘子时,总是从上面放置新的盘子;而当我们需要使用盘子时,也总是从上面取走最顶上的盘子。这就形象地表现了栈的后进先出的特点。
2. C++中的栈
2.1 STL中的stack容器适配器
STL(Standard Template Library,标准模板库)是C++提供的一组通用的模板类和函数,用于实现常用的数据结构和算法。STL中提供了一个名为stack
的容器适配器,用于实现栈这种数据结构。
stack
容器适配器是一个类模板,它的定义如下:
template<typename