#字首表示式(波蘭表示式)

字首表示式又稱為波蘭式,字首表示式的運算子位於運算元之前

舉例:(3+4)*5-6對應的波蘭式是-*+3456

字首表示式的計算求值

從右到左掃描表示式,將數字壓入堆疊

遇到運算子時,彈出棧頂的兩個數,進行運算

注意順序為:棧頂元素 -運算子->次頂元素

並將結果入棧;重複上述過程直到表示式最右端

最後運算得出的值即為最終結果

例如 (3+4)*5-6

對應的波蘭式是-*+3456

從右向左掃描得6 5 4 3 ,入棧

遇到+,彈出3 4 得7,7入棧

遇到* ,彈出7 5 得35,35入棧

遇到- ,彈出35 6 得29,29即為最終結果

#中綴表示式

就是常見的運算表示式

人最熟悉中綴表示式,但計算機最難處理中綴表示式,所以往往將中綴表示式改為字尾表示式

例如(3+4)*5-6就是一箇中綴表示式

#字尾表示式(逆波蘭表示式)

與字首表示式類似,只是運算子位於運算元之後

例如(3+4)*5-6的逆波蘭表示式是34+5*6-

還有很多例子

字尾表示式的計算求值

從左往右掃描表示式,遇到數字時,將數字壓入堆疊

遇到運算子時,彈出棧頂的兩個數,計算

注意順序:次頂元素 -處理->棧頂元素

並將結果入棧,重複上述過程直到表示式最右端

最後結果即為計算結果