def move(n, a, b, c):
? ? if n ==1:
? ? ? ? print a, '-->', c
? ? ? ? return
? ? move(n-1, a, c, b)
? ? print a, '-->', c
? ? move(n-1, b, a, c)
move(4, 'A', 'B', 'C')
?看不懂啊 誰能給“詳細”的解釋一下啊
def move(n, a, b, c):
? ? if n ==1:
? ? ? ? print a, '-->', c
? ? ? ? return
? ? move(n-1, a, c, b)
? ? print a, '-->', c
? ? move(n-1, b, a, c)
move(4, 'A', 'B', 'C')
?看不懂啊 誰能給“詳細”的解釋一下啊
2014-10-15
舉報
2020-01-21
看我畫的執行圖
2014-10-21
第一步:找出特殊情況,如果n==1,那么,直接就從a到c
第二步:如果沒有特殊情況,假設有n個圓盤,那么我們為了把這n個圓盤從a挪到c,就需要首先把第一個圓盤到倒數第二個圓盤挪到b上(保證從上到下的圓盤是由小到大),然后在把a上的最后一個圓盤挪到c上。
第三步:是把b上的n-1個圓盤借助a挪到c上。