算法
递归:汉诺塔
import time
num = 0
def move(n, From, Buffer, To):
if n == 1:
print('{} -> {}'.format(From, To))
global num
num += 1
else:
move(n - 1, From, To, Buffer)
move(1, From, Buffer, To)
move(n - 1, Buffer, From, To)
if __name__ == '__main__':
n = input('请输入层数')
now = time.time()
move(n, 'A', 'B', 'C')
print('移动次数:{},耗时:{:3f}s'.format(num, time.time() - now))
Last updated
Was this helpful?