6 棧的應用 中綴表示式

2022-09-19 15:00:12 字數 419 閱讀 6764

/*

中綴轉字尾、再計算字尾表示式

中綴轉字尾規則

遍歷中綴表示式:

數字:直接輸出

括號:左括號:入棧

右括號:將棧頂符號出棧並輸出,直到匹配到左括號,將左右括號捨棄

符號:與棧頂符號進行優先順序比較

若棧頂符號優先順序低:此符號入棧(預設左括號的優先順序最低)

若棧頂符號優先順序高:將棧頂符號出棧並輸出,之**棧

遍歷結束,將棧中的所有符號出棧並輸出

所有的輸出即是字尾表示式

字尾表示式運算規則

遍歷字尾表示式:

數字:入棧

符號:出棧做右運算元,再出棧做左運算元,根據符號進行運算,將運算結果入棧

遍歷結束,棧中唯一的數為計算結果

*/

棧的應用 中綴表示式轉字尾表示式

有關棧api詳情請參看我的另一篇博文 棧的鏈式儲存 api實現 例項 5 4 5 4 1 2 3 1 2 3 8 3 1 5 8 3 1 5 中綴表示式符合人類的閱讀和思維習慣 字尾表示式符合計算機的 運算習慣 中綴轉字尾演算法 遍歷中綴表示式中的數字和符號 對於數字 直接輸出 對於符號 左括號 進...

棧的應用 (中綴表示式 轉 字尾表示式)

中綴表示式 字尾表示式,都是用來呈現運算表示式的一種方式。標準表示式 4 5 6 7 中綴表示式,就是標準的表示式,即4 5 6 7 字尾表示式,符號在後的表示式,即4 5 6 7 中綴表示式轉字尾表示式的思想是 注意的是 只有 這5種符號才會入棧 1.讀到運算元時,立即輸出 2.讀到的是操作符,分...

棧的應用 中綴表示式轉字尾表示式

中綴轉字尾過程 1.對於數字 直接輸出 2.對於符號 2.1 左括號 進棧 2.2 運算符號 與棧頂符號進行優先順序比較,若棧頂符號優先順序低 此符號進棧 若棧頂符號優先順序不低 將棧頂符號彈出並輸出,之後進棧 若是乘除直接進棧 若是加減,與棧頂比較,若棧頂是乘除,直接輸出,否則進棧。2.3 右括號...