講座5:遞歸算法案例分析之漢諾塔游戲
說在前面
在上一節(jié)“遞歸算法之尋找輕球問題”中,我們研究了如何分析實(shí)際問題、構(gòu)造數(shù)學(xué)模型、推導(dǎo)遞歸公式的方法。并不是所有的遞歸函數(shù)都能構(gòu)造簡明的遞歸公式,今天我們將通過“漢諾塔游戲”案例,進(jìn)一步分析遞歸函數(shù)的設(shè)計(jì)方法,理解遞歸算法簡單明晰的特征。




課后練習(xí)
○○○○○●●●●●

(1)先思考當(dāng)n=4時(shí)的情形,下圖給出了黑白棋子的初始位置和前2步移動(dòng)過程,請寫出剩下的移動(dòng)過程。
0 ○○○○●●●●—— ("—"表示空位)
1 ○○○——●●●○●
2 ○○○●○●●——●
(2)當(dāng)n=5時(shí),需要移動(dòng)幾次,就能將問題轉(zhuǎn)換成求解n=4時(shí)的情形?
需要本文PPT、源代碼和課后練習(xí)答案的,可以加入“Python算法之旅”知識星球參與討論和下載文件,“Python算法之旅”知識星球匯集了數(shù)量眾多的同好,更多有趣的話題在這里討論,更多有用的資料在這里分享。
我們專注Python算法,感興趣就一起來!
相關(guān)優(yōu)秀文章:
講座1:遞歸算法案例分析之入門第一課
講座2:遞歸算法案例分析之猴子吃桃問題
講座3:遞歸算法案例分析之斐波那契數(shù)列
講座4:遞歸算法案例分析之尋找輕球問題
評論
圖片
表情
