文章目录
- 汉诺塔的移动共分为3步:
* 将n-1个盘子从A移动到B,辅助塔为C
* 将第n个盘子从A移动到C,辅助塔为B
* 将n-1个盘子从B移动到C,辅助塔为A
# -*- coding: utf-8 -*-
def move(n, a, b, c):
if n == 1:
print(a, '-->', c)
return
else:
move(n-1, a, c, b) #n-1个盘子 从A移动到B, C为辅助塔
move(1, a, b, c) #1个盘子, 从A移动到C B为辅助塔
move(n-1, b, a, c) #n-1个盘子,从B移动到C, A为辅助塔
move(3, 'A', 'B', 'C')
输出:
A --> C
A --> B
C --> B
A --> C
B --> A
B --> C
A --> C