C++与STL基础二:栈stack与前中后缀表达式的应用
栈(stack)是一种具有特定操作规则的数据结构,它遵循后进先出(LIFO)的原则。在C++中,我们可以使用STL(标准模板库)中的stack类来实现栈的功能。本文将介绍栈及其常见应用之一——前中后缀表达式的计算。
- 栈的基本概念与操作
栈是一种只允许在一端进行插入和删除操作的线性表,这一端称为栈顶。栈的插入操作被称为入栈(push),删除操作被称为出栈(pop)。栈的特点是后进先出,即最后入栈的元素最先出栈。
在C++中,我们可以通过包含头文件来使用stack类。以下是一些常用的栈操作函数:
- push(elem): 元素elem入栈。
- pop(): 出栈,删除栈顶元素。
- top(): 返回栈顶元素,但不删除栈顶元素。
- empty(): 若栈为空则返回true,否则返回false。
- size(): 返回栈中元素个数。
下面是一个简单的例子,演示了如何使用stack类实现栈的基本操作。
#include <iostream>