ALGORITHM VISUALIZATION / 01
中缀表达式求值
看着每个数字与运算符移动:先借助运算符栈排出后缀序列,再借助数值栈算出答案。
01 中缀 → 后缀
02 后缀 → 答案
INPUT
整数、括号、+ − × ÷;输入时使用 + - * /
输入一个表达式
可使用空格与一元正负号。整数除法向零截断,所有结果按有符号 64 位整数检查。
PROCESS
第 1 步运算过程
1 中缀转后缀
2 计算后缀
当前表达式高亮的是当前读取的内容
运算符栈
暂存优先级与括号
栈底 → 栈顶
后缀序列
按顺序排列的输出
从左向右读取
数值栈
后缀计算时保存中间结果
栈底 → 栈顶
键盘 ← → 也可以切换步骤
SOURCE CODE
下载 C++ 源码
作业源码
对应的 C++17 实现使用“中缀转后缀,再计算后缀表达式”,包含输入格式、括号、除零和 64 位溢出检查。