【发布时间】:2015-04-16 21:14:57
【问题描述】:
从字符串计算:1+2-3+4+5+6。我将数字和运算符分成两个堆栈。计算的最佳方法是什么?或者我不应该分成两堆?
[1,2,3,4,5,6]
[+,-,+,+,+]
【问题讨论】:
-
请参阅stackoverflow.com/questions/3422673/… 以获得一般性答案。如果您只想计算带有数字和 +/- 的字符串,则可以分成两个列表。然后遍历列表并更新您的结果。
-
同一个问题:stackoverflow.com/questions/28500031/…。它适用于二进制 + 和 - 的情况,但如果考虑到操作顺序(*、/ 等),波兰符号 alg 是prolly 那个。
标签: java math numbers operators calculator