[問題] 河內塔照順序問題

看板C_and_CPP (C/C++)作者 (愛薩克)時間3年前 (2021/03/28 23:35), 3年前編輯推噓8(8014)
留言22則, 7人參與, 3年前最新討論串1/1
各位版友好 小弟最近剛學到遞迴,學到最經典的河內塔問題 照正常思維去想應該沒啥問題 http://i.imgur.com/alglNEd.jpg
這是小弟的想法 http://i.imgur.com/PiVbR0F.jpg
用n=3個去想 但是如果要寫成只能照順序移動(A~B~C~A) 這是小弟一樣用n=3去想 http://i.imgur.com/cLS8JUl.jpg
想是想得出來 但是遇到遞迴裡面就卡住不知道如何下手 能請各位大大指點迷津嗎 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.137.122.68 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1616945755.A.C65.html ※ 編輯: isaac410 (101.137.122.68 臺灣), 03/28/2021 23:37:21

03/29 01:13, 3年前 , 1F
你知道為什麼原版能用遞迴嗎?
03/29 01:13, 1F

03/29 13:48, 3年前 , 2F
我在想作為新手入門,為何教學自己就在用ABC做不良示範
03/29 13:48, 2F

03/29 13:49, 3年前 , 3F
改成 char start, char store, char goal 不好嗎
03/29 13:49, 3F

03/29 14:06, 3年前 , 4F
新手不太鍵議用河內塔學遞迴
03/29 14:06, 4F

03/29 14:20, 3年前 , 5F
河內塔學遞迴超好吧 很明顯n+1解含n解的子結構阿
03/29 14:20, 5F

03/29 18:13, 3年前 , 6F
用河內塔我也覺得沒問題+1, 問題在教的人有沒有把這題目中
03/29 18:13, 6F

03/29 18:13, 3年前 , 7F
類似於數學歸納法的結構給指出來
03/29 18:13, 7F

03/29 18:14, 3年前 , 8F
原 PO 看起來就完全沒 get 到這件事
03/29 18:14, 8F

03/29 18:14, 3年前 , 9F
所以他自己的「想法」裡一丁點遞迴或子問題的影子都沒有
03/29 18:14, 9F

03/29 18:15, 3年前 , 10F
所以我上來第一句就問原 PO 知不知道為什麼原題能用遞迴
03/29 18:15, 10F
所以L大的意思是從數學歸納法找出來嗎~我試試看 ※ 編輯: isaac410 (101.137.32.198 臺灣), 03/30/2021 00:19:50

03/30 02:37, 3年前 , 11F
是用跟數學歸納法類似的概念, 這正是五樓提的「子結構」
03/30 02:37, 11F

03/30 02:37, 3年前 , 12F
所要講的意思: 大問題的解題步驟中包含了完整小問題的步驟
03/30 02:37, 12F

03/30 02:38, 3年前 , 13F
這就跟數學歸納法證大問題時用小問題已成立來推論類似
03/30 02:38, 13F
我重新推了我的想法,找出一點規律,但寫code還不是很順 ※ 編輯: isaac410 (101.137.32.198 臺灣), 03/30/2021 02:40:29

03/30 10:14, 3年前 , 14F
學遞迴用階乘或費式數列都很棒啊
03/30 10:14, 14F

03/30 11:00, 3年前 , 15F
你要把K個盤子(K>1)從A移到C 你必須先把上面K-1個盤子從
03/30 11:00, 15F

03/30 11:00, 3年前 , 16F
A移到B 再把最底層的盤子從A移到C 最後再把K-1個盤子從B
03/30 11:00, 16F

03/30 11:00, 3年前 , 17F
移到C
03/30 11:00, 17F

03/30 11:00, 3年前 , 18F
你會注意到"把K-1個盤子從A移到B"這件事情和"把K個盤子
03/30 11:00, 18F

03/30 11:00, 3年前 , 19F
從A移到C"做的事情是一樣的
03/30 11:00, 19F

03/30 11:01, 3年前 , 20F
差別只有在目的地和數量不同(演算法一樣但輸入參數不同)
03/30 11:01, 20F

04/08 10:00, 3年前 , 21F
從頭到尾都只有兩個盤子在移動 沒有ABC柱子的區分
04/08 10:00, 21F

04/08 10:00, 3年前 , 22F
只有目標位置 跟 暫放
04/08 10:00, 22F
文章代碼(AID): #1WOA9Rnb (C_and_CPP)
文章代碼(AID): #1WOA9Rnb (C_and_CPP)