我必须编写一个程序,将中缀转换为后缀,然后计算后缀表达式。我完成了转换部分。但是我对评估部分感到有点困惑。评估表达式的方法采用后缀表达式的链接列表表示。这让我有点困惑。方法的标题如下:
public static String evaluatePostfix(StringList postfix)
那么,我是否必须遍历链表并对其进行评估?
提前致谢。
答案 0 :(得分:0)
是的,您需要迭代链表并进行评估。评估后缀表达式的经典方法是使用堆栈。算法如下:
如果您的操作在任何时候都无法在堆栈上找到足够的参数,则正在评估的表达式无效。同样适用于在完成循环后堆栈没有一个元素的情况。