表示式的三種標識方法

2021-09-11 06:05:39 字數 568 閱讀 4812

表示式有三種表示方法,分別為:

字首表示法:運算子+運算元1+運算元2

中綴表示法:運算元1+運算子+運算元2

字尾表示法:運算元1+運算元2+運算子

例如:a * b + (c - d / e) * f

字首式:+ * a b * - c / d e f    

中綴式:a * b + c - d / e * f

字尾式:a b * c d e / - f * +

在字尾式的轉化過程中:原表示式先運算a*b在轉化為字尾式的時候把*放在最後兩個運算元a與b放在前面,因此化為ab*,在原表示式裡再運算括號裡面的(c-d/e)在括號裡先運算d/e,再運算c-d/e,因此化為字尾式的時候,先把de後面放上「/」再放上「-」運算完括號裡面的再運算括號()*f,化為字尾式的時候,由於運算了* 把*放在f的後面,最後在原表示式要運算加法,因此化為字尾式的時候在式子的最後面是「+」。

字首式是找出兩個需要運算的運算元,把運算子放在它們前面。轉化方式和字尾式相似。

中綴式就是原表示式去掉括號。

在字尾式中每個運算子和在它之前出現 且緊靠它的兩個運算元構成乙個最小表示式。

Map三種遍歷方式 lamda表示式

ublic static void main string args 第二種 先將map轉為set型別的key值集合,然後轉為迭代器 setkeyset map.keyset iteratorit2 keyset.iterator while it2.hasnext 第三種 增強for迴圈,前面的是...

中綴表示式求字首和字尾的三種方法

舉例 中綴表示式求字尾表示式 a b c d e f根據運算子的優先順序給表示式加上括號 a b c d e f 將最外層的符號先提取到對應括號的右側 字首表示式與之相反,是將運算子移動到對應括號的左側,不再舉例 中綴表示式求字尾表示式 a b c d e f從左到右將遇到的運算子入棧,遇到運算元直...

php正規表示式 ? 的三種少見用法

我們已經知道括號可以捕捉匹配上的字串,並將它們存入變數之中,如果只想用括號將某部分進行分組?考慮這樣的正規表示式 只希望其中一部分括號中所匹配的 內容被存入記憶體變數中。在下面的例子中,我們希望 bronto 是可選擇的,為了將它變成可選擇的,我們需要將它用括號括起來。接著,模式使用了乙個模 式可以...