我在 PHP 中编写了一个解析器,它可以根据前面问题的反馈将方程的字符串表示形式转换为 RPN 。在测试它时,我发现了两个不同的方程,它们在 RPN 中解析为同一事物。因为当你解决它们时,它们最终在 RPN 中是相同的,所以你会得到相同的答案。
- 3 + 4 * 8 / (1 -5)
- 3 + 4 * 8 / 1 -5
两者都以 348*15-/+ 结尾,解决后给出的答案为 -5,这对第一个是正确的,但第二个的答案应该是 30。
那么我是否误解了如何转换为 RPN?我的解析器的代码可以在上一个问题的上述链接中找到。