欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

2020-08-08

程序员文章站 2022-06-25 16:22:38
最近在学python,学到了递归,里面讲了一个叫做汉诺塔的游戏,用到递归来实现 代码如下:def hanoi(n,x,y,z):#我们这里假设有64个盘子(x表示第一个柱子,y是第二个柱子,z是第三个柱子) if n == 1 : print(x,'-->',z) #如果只有一层,直接从x移到z else : hanoi(n-1,x,z,y)#将n-1个盘子从x移到y print(x,"-->",z)#将最底下的第64个盘子从x移...

最近在学python,学到了递归,里面讲了一个叫做汉诺塔的游戏,用到递归来实现 代码如下:

def hanoi(n,x,y,z):#我们这里假设有64个盘子(x表示第一个柱子,y是第二个柱子,z是第三个柱子)
    if n == 1 :
        print(x,'-->',z) #如果只有一层,直接从x移到z
    else :
        hanoi(n-1,x,z,y)#将n-1个盘子从x移到y
        print(x,"-->",z)#将最底下的第64个盘子从x移到z上
        hanoi(n-1,y,x,z)#将y上的63个盘子移到z上
n=int(input('请输入汉诺塔的层数:'))
hanoi(n,'X','Y','Z')

这个过程我不是很理解,卡在这好几天了,有没有大神能用简单易懂的话教一下我
(来自一只刚入门的小白的求助)

本文地址:https://blog.csdn.net/m0_47140196/article/details/107886441

相关标签: 求助 python