继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

从汉诺塔游戏理解python递归函数

玄鉴
关注TA
已关注
手记 96
粉丝 237
获赞 4217

汉诺塔游戏规则:

有三根相邻的柱子,标号为A,B,C,A柱子上从下到上按金字塔状叠放着n个不同大小的圆盘,现在把所有盘子一个一个移动到柱子B上,并且每次移动同一根柱子上都不能出现大盘子在小盘子上方

图片描述

图片描述

图片描述
图片描述
图片描述
图片采用知乎的郭风林

def move(n,begin,buffer,to):
    if n==1:
        print('Move',n,'Begin',begin,'to',to)
    else:
        move(n-1,begin,to,buffer)
        #讲n-1个圆盘从a搬到b ,第一步
        move(1,begin,buffer,to)
        #讲最大的圆盘从a搬到c,,第二步
        move(n-1,buffer,begin,to)
        #j讲搬到b的n-1个盘子搬到c,第三步
打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP