最新公告
  • 欢迎您光临站盟网(原知事网),一个优质的网站源码基地、精品网站模板和插件。欢迎加入永久SVIP
  • python汉诺塔递归函数是什么?

    正文概述 知事网   2020-12-23 10:12   65

     

    不管是哪种函数语言,汉诺塔一直都是常见的案例学习,大家可能从字面上不理解,实际上就是一种益智类游戏,比如有三个柱子,其中一个柱子上有大小不等的圆盘,需要让我们圆盘的相互移动上,要保证上面圆盘小于下面,这套游戏规则就构成了汉诺塔,在python里经常被使用,下面来详细了解学习下。

    问题要求:

    需要输出移动圆盘的数量以及步骤

    解析:

    1、圆盘1号通过3号移动2号,公式为:hn(n-1,A,C,B)

    2、圆盘2号通过1号移动3号,公式为:hn(n-1,B,A,C)

    实现公式:

    def hn(n,s_from,s_help,s_to):
            if n==1:
                    print(s_from,'-->',s_to)
            else:
                    hn(n-1,s_from,s_to,s_help)
                    print(s_from,'-->',s_to)
                    hn(n-1,s_help,s_from,s_to)
     
    n=int(input("盘子数:"))
    hn(n,'A','B','C')

    《相关推荐:php框架》

    大家可以自行带入数量到里面去计算下,当然除了汉诺塔游戏以外,我们可以还可以调用类似函数计算其他递归问题,希望可以帮助大家学习。

    转载自:python学习网 https://www.py.cn/


    站盟网 » python汉诺塔递归函数是什么?

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者
    请选择支付方式
    ×
    支付宝支付
    微信支付
    余额支付
    ×
    微信扫码支付 0 元