基础算法与数据结构前缀中缀后缀表达式

Posted pullself

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基础算法与数据结构前缀中缀后缀表达式相关的知识,希望对你有一定的参考价值。

目录


简介

中缀表达式(正常的表达式)

[ (1+2)*3-4 ]

前缀表达式(运算符位于操作数之前)

[ -*+1234 ]

后缀表达式(运算符位于操作数之后)

[ 12+3*4- ]

前缀表达式计算

从右向左遍历,遇到数字的时候,将数字入栈,遇到运算符的时候,弹出栈顶两个数字运算,将运算结果入栈,直到剩下最后一个数字。

遍历元素 备注
4 4 4入栈
3 43 3入栈
2 432 2入栈
1 4321 1入栈
+ 433 12出栈,作1+2=3入栈
* 49 33出栈,作3*3=9入栈
- 5 49出栈,作9-4=5入栈

后缀表达式计算

从左向右遍历,遇到数字的时候,将数字入栈,遇到运算符的时候,弹出栈顶两个数字运算,将运算结果入栈,直到剩下最后一个数字。

遍历元素 备注
1 1 1入栈
2 12 2入栈
+ 3 12出栈,作1+2=3入栈
3 33 3入栈
* 9 33出栈,作3*3=9入栈
4 94 4入栈
- 5 94出栈,作9-4=5入栈

以上是关于基础算法与数据结构前缀中缀后缀表达式的主要内容,如果未能解决你的问题,请参考以下文章

如何在程序中将中缀表达式转换为后缀表达式

什么是前缀表达式,中缀表达式,后缀表达式

前缀中缀后缀表达式

前缀中缀后缀表达式

前缀中缀后缀表达式

算法训练 表达式计算