python实现汉诺塔递归算法
def hanoi(n, x, y, z):if n == 1:print(x, '-->', z)else:hanoi(n-1, x, z, y)print(x, '-->', z)hanoi(n-1, y, x, z)n = int(input('请输入层数:'))
hanoi(n, 'x', 'y', 'z')
if n == 1: #如果n等于1时print(x, '-->', z) #直接将x移动到z上即可else: #如果n大于1时hanoi(n-1, x, z, y)#先将n-1个从x上移动到y上print(x, '-->', z) #然后直接将位于x上最后一个移动到z上hanoi(n-1, y, x, z)#最后将n-1个移动到z上