为了账号安全,请及时绑定邮箱和手机立即绑定

汉若塔,中间的函数看不懂,但知道什么意思。

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

    if n == 1:

        print a,"-->",c

        return

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

    print a,"-->",c

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

move(4,'A','B','C')

中:

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

    print a,"-->",c

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

是什么意思?a,c,b和b,a,c又是什么意思?http://img1.sycdn.imooc.com//56efddd700011e9c01900327.jpg结果我知道着么来的!!!

正在回答

2 回答

这段代码第五行move(n-1,a,c,b)为什么不能改成move(n-1,a,b,c)呢?它不是一个tuple吗?里面的顺序为什么会变?

0 回复 有任何疑惑可以回复我~

意思是将a塔上面除了最后一块之外的所有块移到b塔上面去,然后 print a->c意思是将a塔上面最后一块最大的移到此时空闲的c塔上面,然后再把b塔上面的哪些块运到c塔上,这函数本身是一个递归的过程

1 回复 有任何疑惑可以回复我~
#1

贪恋半晚d日光 提问者

它只能是这个顺序,我试过把括号里的字母变过,但结果也变了,这个是需要强记得吗?(move(n-1,a,c,b)和move(n-1,b,a,c))还是有别的什么方法?求解。
2016-03-22 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758623    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

汉若塔,中间的函数看不懂,但知道什么意思。

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信