作者aknow (嘎嘎)
看板Soft_Job
標題Re: [閒聊] 河內塔真的簡單嗎?
時間Fri Apr 4 14:55:34 2014
※ 引述《dharma (達)》之銘言:
: 各位最早知道河內塔問題時
: 真的可以在沒有偷看解答或看提示
: 自己想出n個河內塔的漂亮遞迴寫法
: 自己是覺得沒看提示
: 我可能寫不出程式碼
: 會不會是我資質太差XD
我忘記我是自己想出來,還是看答案來的
關鍵是我學會了
之後這個東西就內化成我自己的
至於怎麼學會的,已經不那麼重要了
怎麼知道你是不是真的學進去了呢?
你現在看了提示,可能寫得出來
一個禮拜後,還記得嗎?
一個月後呢?
如果那時你還可以輕易的寫出來,那就表示你學會了
回到你的問題,不是你資質太差
而是你還不夠努力
這有兩個階段
1. 想出河內塔的解法
2. 將解法用程式表現出來
不知道你卡住的是哪一個?
如果是 2
那是你的程式語言不夠熟練
例如要用英文寫一篇社論文章,你可能腦袋裡有想法
用中文可以,但用英文就沒那麼順,這就是語言熟練度的問題
改善方法是先熟悉語法,然後多寫
你應該要能夠很流暢的將你的想法寫成程式
如果是 1
可能是你演算法類的東西看得不夠多,知道的越多,可以拿來解問題的武器就越多
Ex: sorting, search, greedy, dp, divide & conquer, tree, graph, heuristic, ...
你能做的就是多看多學
但這些知識比較像內功,看到解法你也許就懂了
可是如果只給你問題,你不一定有辦法想出這樣的答案
改善方法是多做題目,做多了就會有 sense,大腦會幫你歸類
怎樣特性的題目,大概要朝哪個方向思考
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.171.177.13
※ 文章網址: http://www.ptt.cc/bbs/Soft_Job/M.1396594537.A.805.html
推 descent:可是怎麼確定是不是已經背起來的還是理解會的 04/05 00:32
→ DrTech:以河內塔來說,若是理解會的,一輩子都不會忘記吧 04/05 12:53
→ DrTech:只要回想一下只有三個圓盤的移動情形,演算法就整個出來了 04/05 12:54
→ DrTech:sorting 或各種 tree 也是,回想最簡單的情形,整個就出來 04/05 12:55
推 GoalBased:學校老師通常都是出一個你完全沒看過的題目 04/05 17:14
→ GoalBased:但骨子裡還是相同演算法加上變化 你寫得出來就是懂啦 04/05 17:15
推 bobju:本文跟推文都推 04/06 19:02
→ bobju:n^m 費氏數列 排列組合 八皇后 迷宮 騎士 河內塔 這些都是 04/06 19:06