[問題] 二元樹裡面有括號如何處理?!

看板C_and_CPP (C/C++)作者 (蘑菇)時間16年前 (2009/07/17 11:13), 編輯推噓2(203)
留言5則, 3人參與, 最新討論串1/1
小弟想到一個問題就是postfix處理加減乘除後把資料丟到二元樹裡面去做整理 但是infix裡面有括號 雖說他轉成postfix後就可以把括號去除掉 但是在樹的觀點裡面看 它的優先處理權怎麼做 有人知道的嗎?! 謝謝<(_ _)> -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.33.234.43

07/17 11:24, , 1F
樹不是infix轉postfix用的嗎 postfix eval用stack吧
07/17 11:24, 1F

07/17 11:44, , 2F
轉成樹就不需要考慮優先啦 (+ 2 (* 3 5)) 和 (* (+ 2 3) 5)
07/17 11:44, 2F

07/17 11:44, , 3F
就可以表現出 2 + 3 * 5 的兩種括號方式
07/17 11:44, 3F

07/17 11:45, , 4F
另, 你怎麼轉 postfix 的, 就怎麼建 tree 兩個是等價的
07/17 11:45, 4F

07/17 11:55, , 5F
遇到'('代表長出子樹,而遇到')'代表結束子樹,回到上一節
07/17 11:55, 5F
文章代碼(AID): #1AN-nT2o (C_and_CPP)
文章代碼(AID): #1AN-nT2o (C_and_CPP)