STL中的stack是一种后进先出(Last In First Out,LIFO)的数据结构,它可以使用标准库中的模板类
std::stack
来实现。Stack主要支持两个操作:push(入栈)和pop(出栈)。在入栈操作时,元素被添加到栈的顶部;在出栈操作时,栈顶元素被移除。
Stack模板类的定义:
template <class T, class Container = deque<T>> class stack;
T是元素的类型,而Container是底层容器的类型,默认情况下底层容器是std::deque
。
Stack模板类提供成员函数:
- push():在栈顶插入一个元素。
- pop():移除栈顶元素。
- top():返回栈顶元素的引用。
- empty():返回布尔值,表示栈是否为空。
- size():返回栈中元素的数目。