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

不太懂三个递归的先后顺序。。。

它们彼此间是怎么排先后的?

正在回答

2 回答

不是三个递归,就是一个递归move(n,a,b,c),一个函数用自身迭代的方式实现功能,这个例题其实有一个隐含规律就是要完成参数为n的操作,需要完成2次参数为n-1的同样操作(改改字母名字而已)。所以硬要说的话不是先后顺序,而是上下级,2个n-1的构成了参数为n的

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

默党 提问者

那move(n-1, a, c, b)和move(n-1, b, a, c)在执行时怎么排先后顺序?
2018-02-06 回复 有任何疑惑可以回复我~
#2

慕娘8786788 回复 默党 提问者

按顺序,先执行acb那个,不过,move(n-1,a,c,b)又是由两个n-2级别的构成的,即move(n-2,a,b,c)和move(n-2,c,a,b),这样一直下去直到n-(n-1)级别,到这里move(n-1,a,c,b)才算结束,然后继续向下运行
2018-02-06 回复 有任何疑惑可以回复我~
#3

默党 提问者

非常感谢!
2018-02-07 回复 有任何疑惑可以回复我~

翻译一下意思:将n个盘子从a移到c,如果n为1,则将这个盘子从a移到c即可,如果不等于1,则先将a中上面的n-1个移到b,再将a中最下面那个移到c,最后再把b的n-1个全部移到c

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

举报

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

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

进入课程

不太懂三个递归的先后顺序。。。

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