用棧將中綴表達式轉換成后綴表達式 后綴表達式求值算法?
后綴表達式求值算法?中綴表達式轉換為等價的后綴表達式后,計算中不再考慮運算符的優先級,只需從左到右掃描后綴表達式即可。具體求值步驟如下:從左到右掃描后綴表達式,取出表達式中運算符的前兩個操作數,遇到運
后綴表達式求值算法?
中綴表達式轉換為等價的后綴表達式后,計算中不再考慮運算符的優先級,只需從左到右掃描后綴表達式即可。具體求值步驟如下:從左到右掃描后綴表達式,取出表達式中運算符的前兩個操作數,遇到運算符時進行運算,然后將結果帶回后綴表達式;繼續掃描,直到后綴表達式的最后一個表達式。例如,計算后綴表達式(ABC*def*/-)的算法是設置堆棧。開始時,堆棧為空,然后從左到右掃描后綴表達式。如果遇到運算符,它將進入堆棧。如果遇到運算符,它將從堆棧中退出兩個元素,首先退出的元素將放在運算符的右側,然后退出將其放在運算符的左側,然后將結果放在堆棧中,直到掃描后綴表達式。此時,堆棧中只有一個元素,這是操作的結果。例如,找到后綴表達式的值:128 2-74-/*堆棧的變化如下: