参数是怎么不断交换的
def han(n,x,y,z):if n==1:
print(x,'-->',z)
else:
han(n-1,x,z,y)
print(x,'-->',z)
han(n-1,y,x,z)
n=int(input('请输入汉诺塔的层数:'))
han(n,'X','Y','Z')
pycharm设断点按步运行就都看到了。 def hanoi(n, a, b, c):
if n == 1:
print(a, '-->', c)
else:
hanoi(n - 1, a, c, b)
print(a, '-->', c)
hanoi(n - 1, b, a, c)
hanoi(6, 'A', 'B', 'C')
汉诺塔这个算法好经典
页:
[1]