日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

数据结构:前缀,中缀,后缀表达式(逆波兰表达式)

發布時間:2025/6/15 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据结构:前缀,中缀,后缀表达式(逆波兰表达式) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前綴表達式(波蘭表達式)

? 前綴表達式的運算符位于操作數之前。

? 比如 (1+2)*3-4 ?對應的前綴表達式就是: - * + 1 2 3 4

? ?前綴表達式的計算機求值

? ? 從右至左掃描表達式,遇到數字時,就將數字壓入棧頂,遇到運算符時,彈出棧頂的兩個數,用運算符對它們做相應的計算(棧頂元素和次頂元素),并將結果入棧;重復上述過程直到表達式最左端,最后運算得出的值即為表達式的結果。

例如: (1+2)*3-4對應的前綴表達式就是 - * + 1 2 3 4, 針對前綴表達式求值步驟如下:

? 1). 從右至左掃描, 將4?3?2?1壓入堆棧.

? 2). 遇到+運算符,因此彈出1和2(1位棧頂元素,2位次頂元素),計算出1+2的值,得3,再將3入棧

? 3). 接下來是*運算符,因此彈出3和3,計算出3*3=9,將9壓入棧

? 4). 最后是 - 運算符,計算出9-4的值,即5,由此得出最終結果.

中綴表達式?

? ??中綴表達式就是我們最常見的運算表達式, (1+2)*3-4.

? ??中綴表達式是人們最常見的形式, 但對計算機來說卻不好操作,因此往往會把中綴表達式轉成其他表達式來操作(一般是后綴表達式)

后綴表達式(逆波蘭表達式)

? 同前置表達式相似,只是運算符位于操作數之后。

??(1+2)*3-4的后綴表達式就是1 2 + 3 * 4 -?

? 正常表達式 ?a+b ? ?, 逆波蘭表達式? a b +?

?正常表達式 ?a+(b-c) ? ?, 逆波蘭表達式 a b c - +?

?正常表達式 ?a+(b-c)*d ? ?, 逆波蘭表達式 a b c - d * +

?正常表達式 ?a+d*(b-c)? ?, 逆波蘭表達式 a d b c - * +

正常表達式 ?a=1+3 ? , 逆波蘭表達式 a 1 3 + =

???后綴表達式的計算機求值

? ? ? 從左至右掃描表達式,遇到數字時,就將數字壓入棧頂,遇到運算符時,彈出棧頂的兩個數,用運算符對它們做相應的計算(棧頂元素和次頂元素),并將結果入棧;重復上述過程直到表達式最右端,最后運算得出的值即為表達式的結果。

例如: (1+2)*3-4對應的后綴表達式就是1 2 + 3 * 4 -, 針對前綴表達式求值步驟如下:

? 1). 從左至右掃描, 將1 2壓入堆棧.

? 2). 遇到+運算符,因此彈出2和1(2位棧頂元素,1位次頂元素),計算出1+2的值,得3,再將3入棧

? 3) 將3入棧.

? 4) 接下來是*運算符,因此彈出3和3,計算出3*3=9,將9入棧.

? 5) 將4入棧

? 6). 最后是 - 運算符,計算出9-4的值,即5,由此得出最終結果.

?

?

?

總結

以上是生活随笔為你收集整理的数据结构:前缀,中缀,后缀表达式(逆波兰表达式)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。