有个简单规范的转换方法:
1、将运算按优先级全部用括号限定清楚,例如上题表达为:((a* ( (b*c) - d))+e)
2、将每个括号中的运算符移动到括号尾部(即两个运算对象的后面):((a((bc*)d-)*)e+)
3、去掉括号,就得到了后缀表达式啦:abc*d-*e+
在转换过程中,首先按运算优先级做了严格限定,再把运算符移动到运算对象的后面,
自然正好满足后缀表达的需求啦.
有个简单规范的转换方法:
1、将运算按优先级全部用括号限定清楚,例如上题表达为:((a* ( (b*c) - d))+e)
2、将每个括号中的运算符移动到括号尾部(即两个运算对象的后面):((a((bc*)d-)*)e+)
3、去掉括号,就得到了后缀表达式啦:abc*d-*e+
在转换过程中,首先按运算优先级做了严格限定,再把运算符移动到运算对象的后面,
自然正好满足后缀表达的需求啦.