資料結構表示式

2021-08-31 21:40:51 字數 769 閱讀 8381

35,15,+,80,70,-,*,20,/               //字尾表達方式

(((35+15)*(80-70))/20)=25           //中綴表達方式  

/,*,+,35,15,-,80,70, 20             //字首表達方式 

人的思維方式很容易固定~~!正如習慣拉10進製。就對2,3,4,8,16

等進製不知所措一樣~~!

人們習慣的運算方式是中綴表示式。而碰到字首,字尾方式。。迷茫

其實僅僅是一種表示式子的方式而已(不被你習慣的方式)

我這裡教你一種也許你老師都沒跟你講的簡單轉換方式

乙個中綴式到其他式子的轉換方法~~

這裡我給出乙個中綴表示式~

a+b*c-(d+e)

第一步:按照運算子的優先順序對所有的運算單位加括號~

式子變成拉:((a+(b*c))-(d+e))

第二步:轉換字首與字尾表示式

字首:把運算符號移動到對應的括號前面

則變成拉:-( +(a *(bc)) +(de))

把括號去掉:-+a*bc+de  字首式子出現

字尾:把運算符號移動到對應的括號後面

則變成拉:((a(bc)* )+ (de)+ )-

把括號去掉:abc*+de+-  字尾式子出現

發現沒有,字首式,字尾式是不需要用括號來進行優先順序的確定的。

如果你習慣拉他的運算方法。計算的時候也就是從兩個運算元的前面

或者後面找運算子。而不是中間找,那麼也就直接可以口算拉

資料結構 表示式計算

表示式求值時資料結構的基礎演算法之一,其主要思想就是堆疊的使用。下面將詳細的介紹演算法的各個部分 表示式求值演算法主要流程如下 首先要說明的是字尾表示式,字尾表示式即 不包含括號,運算子放在兩個運算物件的後面,所有的計算按運算子出現的順序,嚴格從左向右進行 不再考慮運算子的優先規則,如 2 1 3 ...

資料結構 表示式求值

一 實驗目的 通過乙個具體實際應用例子,加深對資料結構課程的理解,能夠綜合利用資料結構以及c語言的知識設計程式,應用到實際問題中去。二 實驗題目 常見的小型計算器可以通過輸入乙個由運算元和操作符組成的表示式計算出結構,設計乙個程式模擬上述功能。本實驗要求至少建立兩個棧和乙個運算子優先順序比較表,按照...

資料結構 表示式求值

程式 如下 1 include 2 include 3 include 45 define stack init size 100 6 define stackincrement 10 7 define overflow 2 8 define ok 1 9 define error 0 1011 t...