Prefix
前、中、後序
中序表示法 Suffix
a+b
前序表示法 Prefix
+ab
後序表示法 Postfix
ab+
中序轉換
[後序式]
括號法,將運算子兩旁的運算元依先後順序(由左至右)全部括號起來,然後將所有的右括號取代為左邊最接近的運算子(由最內層括號開始),最後去掉所有的左括號就可以完成後序表示式,例如:
a+b*d+c/d => ((a+(b*d))+(c/d)) -> abd*+cd/+
[前序式]
括號法,將運算子兩旁的運算元依先後順序(由右至左)全部括號起來,然後將所有的左括號取代為右邊最接近的運算子(由最內層括號開始),最後去掉所有的右括號就可以完成後序表示式,例如:
a+b*d+c/d => ((a+(b*d))+(c/d)) -> ++a*bd/cd
後序轉前序
AB*C*DEFG/+H+/^
由左向右→
A (運算元A)
A;B (運算元B之前加分號;)
*AB (遇運算子*,往左尋找分號;的前一個運算元,將*插入該運算元前面,移除分號;。)
*AB;C(運算元C之前加分號;)
**ABC (遇運算子*,)
前序:^**ABC/D++E/FGH
參考文獻