前缀表达式是一种十分有用的表达式,它将中缀表达式转换为可以依靠简单的操作就能得到运算结果的表达式。例如,(a+b)*(c+d)转换为*,+,a,b,+,c,d。
它的优势在于只用两种简单的操作,入栈和出栈就可以解决任何中缀表达式的运算。
其运算方式为:如果当前字符(或字符串)为数字或变量,则压入栈内;如果是运算符,则将栈顶两个元素弹出栈外并作相应运算,再将结果压入栈内。
当前缀表达式扫描结束时,栈里的就是中缀表达式运算的最终结果。
前缀表达式是一种十分有用的表达式,它将中缀表达式转换为可以依靠简单的操作就能得到运算结果的表达式。例如,(a+b)*(c+d)转换为*,+,a,b,+,c,d。
它的优势在于只用两种简单的操作,入栈和出栈就可以解决任何中缀表达式的运算。
其运算方式为:如果当前字符(或字符串)为数字或变量,则压入栈内;如果是运算符,则将栈顶两个元素弹出栈外并作相应运算,再将结果压入栈内。
当前缀表达式扫描结束时,栈里的就是中缀表达式运算的最终结果。
Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.