答案 0 :(得分:5)
后缀/前缀表示法的优点在于您不需要括号。括号用于中缀表示法,因为存在歧义,例如:
a + b - c
这可能意味着以下任何一种情况:
(a + b) - c
a + (b - c)
然而,在后缀表示法中,它们明显不同:
a b + c -
a b c - +
没有必要使用parantheses /括号来强制执行后缀表示法中的评估顺序。
您可以使用带有parantheses的中缀表示法来表达,并将其转换为后缀表示法,遵循运算符优先级。一种这样的算法是Edsger Dijkstra基于堆栈的“分流码算法”。
答案 1 :(得分:0)
如果你只关心简单的数学运算符+和 - 它们是可交换的,那么你可能不需要关心通常强制执行计算顺序的括号。
你的计算器可能只需要是一个简单的解析器和累加器,如果存在则忽略括号 - 除非我遗漏了关于括号的预期含义的东西