Discuss / Python / 我比较懵逼这几个参数是什么意思

我比较懵逼这几个参数是什么意思

Topic source

n写的是表示3个柱子A、B、C中第1个柱子A的盘子数量,这句话还好理解,但是后边的a,b,c三个参数是干什么的,不理解这三个参数。

看了下边的评论,稍微有点懂了,有点抽象,晕乎乎的,在捋一下

飞页快刀

#3 Created at ... [Delete] [Delete and Lock User]

def move(n,a,b,c):

    if n == 1:

        print(a,'->',c)

    else:

        move(n-1,a,c,b)

       # print(a, '-->', c)

        move(1,a,b,c)

        move(n-1,b,a,c)

设定n为盘数,a为起始柱,b为辅助柱,c为目标柱。当n为1时,一个盘从a直接到c。否则,n-1的盘需要移到b上,再将一个盘从a移到c,最后将n-1的盘从b移到c,这就是else三条命令的由来。因为是递归函数,else中的每条命令都会再次重复调用,直到n为1为止。


  • 1

Reply