字尾表示式的求值
步驟:1.將字尾表示式以空格進行拆分,用字串陣列儲存每個部分
2.建立乙個字串型的棧用於儲存字尾表示式中的數字
3.對字串陣列進行遍歷。如果是數字,就入棧; 如果是運算 符,就從棧**來兩個元素,將這兩個元素的型別改變為整數型別,配合該運算子進行運算,將運算結果轉換為字串後重新入棧;重複此過程,直到遍歷結束
4.輸出棧中的棧頂元素(此時棧中只有乙個元素),即為字尾表示式的值
**如下:
public class demo1 extends jframe
public static void main(string args)
class myactionlistener implements actionlistener");
for(string string2 : strings) else if(string2.equals("-")) else if(string2.equals("*")) else if(string2.equals("/")) else
}"");
} }}
執行結果:
該程式在實現字尾表示式的求值基礎上,將對字尾表示式的每一步的運算顯示到文字域中,供讀者理解.謝謝大家
字尾表示式求值
字尾表示式求值過程中不需要考慮運算子的優先順序,只需要對該表示式中的每乙個元素進行判斷,若為運算元則將其儲存在乙個陣列裡 入棧 若為運算子則取出前面的兩個運算元 彈棧 並運算,並將運算結果放回該陣列 入棧 最終陣列的最後乙個元素 棧頂元素 即為該表示式的運算結果.如 字尾表示式 23 等價於中綴表示...
字尾表示式求值
題目描述 為了便於處理表示式,常常將普通表示式 稱為中綴表示 轉換為字尾sqstack 順序棧的初始化 status initstack sqstack s 順序棧的入棧 status push sqstack s,selemtype e 演算法3.3 順序棧的出棧 status pop sqsta...
字尾表示式求值
根據 逆波蘭表示法,求表示式的值。有效的算符包括 每個運算物件可以是整數,也可以是另乙個逆波蘭表示式。說明 整數除法只保留整數部分。給定逆波蘭表示式總是有效的。換句話說,表示式總會得出有效數值且不存在除數為 0 的情況。示例 1 輸入 tokens 2 1 3 輸出 9 解釋 該算式轉化為常見的中綴...