課程
/后端開發
/Python
/初識Python
move (n-1, a, c, b)
print a, ‘--', ?c ?這部分還在定義?
2017-10-13
源自:初識Python 7-5
正在回答
漢諾塔講究大小順序,小的在上大的在下,要把n個盤子從a柱移到c柱就是move(n,a,b,c)。注意函數里面的4個參數:第一個參數(n)代表的是盤子個數,第二個參數(a)的位置代表的是起始柱,第三個參數(b)代表的是過渡柱,最后一個參數(c)代表的是目標柱。
你不要想具體的移動的步驟,抽象來想:
第一步就是把n-1個小盤子移到b,第二步是把a柱上的最大的盤子移到c,最后是把b柱上n-1個盤子移到c
所以第一步就是move(n-1,a,c,b)?,這個參數代表把n-1個盤子從a起始柱移到b目標柱,c就當是個過渡的柱子
第二步就是print a,'-->',c??,這個表示把a起始柱上的一個盤子移到c
最后一步move(n-1,b,a,c),表示把b起始柱上的n-1個盤子移動到c上
人共友 提問者
舉報
學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-10-13
漢諾塔講究大小順序,小的在上大的在下,要把n個盤子從a柱移到c柱就是move(n,a,b,c)。注意函數里面的4個參數:第一個參數(n)代表的是盤子個數,第二個參數(a)的位置代表的是起始柱,第三個參數(b)代表的是過渡柱,最后一個參數(c)代表的是目標柱。
你不要想具體的移動的步驟,抽象來想:
第一步就是把n-1個小盤子移到b,第二步是把a柱上的最大的盤子移到c,最后是把b柱上n-1個盤子移到c
所以第一步就是move(n-1,a,c,b)?,這個參數代表把n-1個盤子從a起始柱移到b目標柱,c就當是個過渡的柱子
第二步就是print a,'-->',c??,這個表示把a起始柱上的一個盤子移到c
最后一步move(n-1,b,a,c),表示把b起始柱上的n-1個盤子移動到c上