亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

這是我對漢諾塔遞歸函數每一層怎么計算的一點看法

def?move(n,?a,?b,?c):????
????print?n,a,b,c????
????if?n?==1:????????
????????print?a,?'-->',?c????????
????????return????
????move(n-1,?a,?c,?b)????
????print?'one',n-1,a,c,b????
????move(1,a,b,c)????
????print?'two',1,a,b,c????
????move(n-1,?b,?a,?c)????
????print?'three',n-1,b,a,c
move(4,?'A',?'B',?'C')
運行結果:
4?A?B?C
3?A?C?B
2?A?B?C
1?A?C?B
A?-->?B
one?1?A?C?B
1?A?B?C
A?-->?C
two?1?A?B?C
1?B?A?C
B?-->?C
three?1?B?A?C
one?2?A?B?C
1?A?C?B
A?-->?B
two?1?A?C?B
2?C?A?B
1?C?B?A
C?-->?A
one?1?C?B?A
1?C?A?B
C?-->?B
two?1?C?A?B
1?A?C?B
A?-->?B
three?1?A?C?B
three?2?C?A?B
one?3?A?C?B
1?A?B?C
A?-->?C
two?1?A?B?C
3?B?A?C
2?B?C?A
1?B?A?C
B?-->?C
one?1?B?A?C
1?B?C?A
B?-->?A
two?1?B?C?A
1?C?B?A
C?-->?A
three?1?C?B?A
one?2?B?C?A
1?B?A?C
B?-->?C
two?1?B?A?C
2?A?B?C
1?A?C?B
A?-->?B
one?1?A?C?B
1?A?B?C
A?-->?C
two?1?A?B?C
1?B?A?C
B?-->?C
three?1?B?A?C
three?2?A?B?C
three?3?B?A?C


正在回答

1 回答

我把每一步參數變化都打印出來了,雖然理解還是有點費勁,但是知道了具體的函數參數變化,雖然抽象理解是把n-1移動到b,把1移動到c,再把n-1移動到c,但計算機是不會理解這個想法的,可是如果不懂計算機是如何運作的,又如何能夠如此巧合的語言,很糾結

1 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
初識Python
  • 參與學習       758392    人
  • 解答問題       8967    個

學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序

進入課程

這是我對漢諾塔遞歸函數每一層怎么計算的一點看法

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號