【数据结构】第三届中国计量大学ACM程序设计竞赛个人赛 问题A: Arithmetic Problems(只含加减乘除的中缀表达式计算)
传送门
题目大意:给出一个不含括号的且只含加减乘除运算符和数字的字符串作为待计算的中缀表达式。运算符的计算规则依据下方图片中描述的形式给出。目的:求中缀表达式的值。
解题思路:定义两个栈,一个操作符栈,一个运算数栈。首先遍历表达式,遇到操作数直接入栈,遇到运算符将优先级高的 “乘除”(实际意义中的乘除,接下来的加减也是实际意义中的加减)做相应的运算并在操作数栈中存入运算后的结果;将优先级低的 “加减” 堆进运算符栈。
经过上述的一遍操作,最后会留下一个只含加减运算以及相应的运算数在表达式中。
例如:将1
原创
2021-02-16 22:25:23 ·
129 阅读 ·
0 评论