課程
/后端開發
/Python
/初識Python
move 里面a,b.c參數表達不明白,第五行為什么事a,c,b而第七行是b,a,c
2016-06-24
源自:初識Python 7-5
正在回答
def?move(n,?a,?b,?c): ????if?n?==1: ????????print?a,?'-->',?c ????????return ???? ????move(n-1,?a,?c,?b) ????print?a,'--->',c??等價于????move(1,a,b,c),其實就是第N-1步移動完之后,移動最后一步,即把a移到c上就算完成了。 ????move(n-1,?b,?a,?c) ???? move(15,?'A',?'B',?'C')
中間第五至第七其實已經是算在def中,而且調用自己move這個,
假設n=2,那么就是A---B,A----C,B----C,而第五至第七這個演示就是在說這三步
而之所以會有a,c,b??? b,a,c? 這些差別是因為在n==1的時候才會打印出來a--->c也就是第1挪至第三的位置,所以要想打印出東西來,如a---b,就是? move(n,a,c,b),而b--->c就是move(n,b,a,c)了。
其實move里面的參數位置不是固定嗎?為什么會變
move(n, a, b, c)表示的是將n個圓盤從a柱上經過b柱移動到c柱上
第五行的a,c,b就是從a柱上經過c柱移動到b柱上去
第七行的b,a,c就是從b柱上經過a柱移動到c柱上去
舉報
學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-07-08
中間第五至第七其實已經是算在def中,而且調用自己move這個,
假設n=2,那么就是A---B,A----C,B----C,而第五至第七這個演示就是在說這三步
而之所以會有a,c,b??? b,a,c? 這些差別是因為在n==1的時候才會打印出來a--->c也就是第1挪至第三的位置,所以要想打印出東西來,如a---b,就是? move(n,a,c,b),而b--->c就是move(n,b,a,c)了。
2016-06-24
其實move里面的參數位置不是固定嗎?為什么會變
2016-06-24
move(n, a, b, c)表示的是將n個圓盤從a柱上經過b柱移動到c柱上
第五行的a,c,b就是從a柱上經過c柱移動到b柱上去
第七行的b,a,c就是從b柱上經過a柱移動到c柱上去