前缀、中缀、后缀表达式

前缀、中缀、后缀表达式,它们之间的区别在于运算符相对与操做数的位置不一样:前缀表达式的运算符位于与其相关的操做数以前;中缀和后缀同理。对计算机来讲中缀表达式是很复杂的,所以计算表达式的值时,一般须要先将中缀表达式转换为前缀或后缀表达式,而后再进行求值。对计算机来讲,计算前缀或后缀表达式的值很是简单。计算机

举例:
(3 + 4) × 5 - 6  中缀表达式
- × + 3 4 5 6  前缀表达式
3 4 + 5 × 6 -  后缀表达式数字

前缀表达式的求值:运算符

从右至左扫描表达式,遇到数字时,将数字压入堆栈,遇到运算符时,弹出栈顶的两个数,用运算符对它们作相应的计算(栈顶元素 op 次顶元素),并将结果入栈;重复上述过程直到表达式最左端,最后运算得出的值即为表达式的结果。

后缀表达式求值:

从左至右扫描表达式,遇到数字时,将数字压入堆栈,遇到运算符时,弹出栈顶的两个数,用运算符对它们作相应的计算(次顶元素 op 栈顶元素),并将结果入栈;重复上述过程直到表达式最右端,最后运算得出的值即为表达式的结果。  

相关文章
相关标签/搜索