假设我们在前缀表示法or(1) and A B or(2) or(3) C D E
中有一个表达式(其中A,B,C,D,E是布尔值,为了方便而编号为or
)我们想要转换为中缀表示法。原则上我有两种方法来评估它:
(1)从or(3) C D
开始,然后or(2)
,然后and
,然后or(1)
开始
(2)从and A B
开始,然后检查or(3)
,or(2)
。最后检查or(1)
(1)从最右边的操作员开始评估 (2)从最左边的算子开始,将所有操作数作为直接邻居进行评估。
两次评估都会产生(A and B) or C or D or E
。
哪种评估顺序正确?
这两个评估是否会为相同的前缀记录提供不同的结果?