課程
/后端開發
/Python
/初識Python
我這出了點問題答案顯示不出來
2017-09-15
源自:初識Python 7-5
正在回答
def move(n,a,b,c): ? ? if n==1: ? ? ? ? ? ?print (a,'-->',c) #這其實是只有一個圓盤需要從 A 到 C 的情況。所有遞歸,最終都是走到這一步。 ? ? ? ? ? ?return #這是結束遞歸,省略了None。沒有這句的話,遞歸沒辦法結束。 ? ? move(n-1,a,c,b) #將 A 柱的n-1個盤移到 B 柱,這里毫無爭議。注意形參順序變化了。 ? ? print a,'-->',c #這句話才是第一個柱子的第n個圓盤移動到目標柱子。 ? ? move(n-1,b,a,c))#過渡柱子 B 上(n-1)個圓盤B遞歸移動到目標柱子 C
意思是沒有返回值時代表結束遞歸?
if n==1:
print a,'-->',c
return
move(n-1,a,c,b)
print a,'->>',b
move(n-1,b,a,c)
print b,'->>',c
舉報
學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-09-15
def move(n,a,b,c):
? ? if n==1:
? ? ? ? ? ?print (a,'-->',c) #這其實是只有一個圓盤需要從 A 到 C 的情況。所有遞歸,最終都是走到這一步。
? ? ? ? ? ?return #這是結束遞歸,省略了None。沒有這句的話,遞歸沒辦法結束。
? ? move(n-1,a,c,b) #將 A 柱的n-1個盤移到 B 柱,這里毫無爭議。注意形參順序變化了。
? ? print a,'-->',c #這句話才是第一個柱子的第n個圓盤移動到目標柱子。
? ? move(n-1,b,a,c))#過渡柱子 B 上(n-1)個圓盤B遞歸移動到目標柱子 C
2018-08-25
意思是沒有返回值時代表結束遞歸?
2017-09-15
if n==1:
print a,'-->',c
return
move(n-1,a,c,b)
print a,'->>',b
move(n-1,b,a,c)
print b,'->>',c