前綴、中綴、后綴表達式的轉換舉例
- 前綴表達式:/+A*BCD。
- 中綴表達式:A+B*C/D。
- 后綴表達式:ABC*+D/。
中綴表達式轉換后綴表達式算法
- 將棧初始化為空棧;
- 從左到右掃描表達式的每一個字符,執行下面操作:
2.1 遇到操作數:直接輸出(添加到后綴表達式中)
2.2 棧為空時,遇到運算符,直接入棧
2.3 遇到左括號:將其入棧
2.4 遇到右括號:執行出棧操作,並將出棧的元素輸出,直到彈出棧的是左括號,左括號不輸出。
2.5 遇到其他運算符:加減乘除:彈出所有優先級大於或者等於該運算符的棧頂元素,然后將該運算符入棧
2.6 最終將棧中的元素依次出棧,輸出。
例如:(A+B*C)/D

參考:http://www.cnblogs.com/mygmh/archive/2012/10/06/2713362.html
