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

递归函数那里的练习答案是什么?

我这出了点问题答案显示不出来

正在回答

3 回答

def move(n,a,b,c):
    if n==1:
           print (a,'-->',c) #这其实是只有一个圆盘需要从 A 到 C 的情况。所有递归,最终都是走到这一步。
           return #这是结束递归,省略了None。没有这句的话,递归没办法结束。
    move(n-1,a,c,b) #将 A 柱的n-1个盘移到 B 柱,这里毫无争议。注意形参顺序变化了。
    print a,'-->',c #这句话才是第一个柱子的第n个圆盘移动到目标柱子。
    move(n-1,b,a,c))#过渡柱子 B 上(n-1)个圆盘B递归移动到目标柱子 C

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

意思是没有返回值时代表结束递归?


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

if n==1:

print a,'-->',c

return

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

print a,'->>',b

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

print b,'->>',c


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

举报

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

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

进入课程

递归函数那里的练习答案是什么?

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