看板 Grad-ProbAsk 關於我們 聯絡資訊
https://i.imgur.com/MixMUq3.jpg 想請問一下第3題 這是板上大大的答案, 但是看了還是不太理解,這個演算法的概念大概為何?! 還有operator和operation不是都是指加減乘除嗎?! 麻煩大家了~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 120.126.194.203 ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1513754026.A.053.html
nat99up: 其實就跟中轉後一樣12/20 15:39
nat99up: 不一樣的點是scan改右到左 左括跟右括角色互換12/20 15:40
nat99up: 其他看到operand就output和operator優先度等規則都一樣12/20 15:40
nat99up: 只能由左scan到右這點用stack就可以反序解決12/20 15:44
nat99up: 單個queue就可以模擬stack12/20 15:45
謝謝n大的解釋,雖然我花了很多時間才終於成功qq,不過我全都是用Stack是正常的嗎。 第一個Stack做反序 第二個Stack放operator和括號 第三個Stack用來push output ※ 編輯: king8313 (42.73.209.250), 12/20/2017 23:03:31
nat99up: 第三個queue視為c++的vector當output我覺得比較好 12/21 09:25
king8313: 謝謝n大~ 12/21 13:01
andy6666: 是說第二題的D不是連到A嗎? 12/25 16:48
andy6666: 這題是不是連判斷長度跟是否為空都要自己定義啊 12/25 16:55
ShenJing: 我也覺得第二題D是連到A 12/26 17:44
Trump2020: 題目說限用3個queue,但給的合法操作是pop, push,所 01/30 17:01
Trump2020: 以到底是三個Queue or Stack? 01/30 17:01