首页 > 其他 > 详细

汉诺塔

时间:2021-07-13 15:10:04      阅读:20      评论:0      收藏:0      [点我收藏+]

有三个立柱A、B、C。A柱上穿有大小不等的圆盘n个,较大的圆盘在下,较小的圆盘在上。要求把A柱上的圆盘全部移到C柱上,保持大盘在下、小盘在上的规律(可借助B柱)。每次移动只能把一个柱子最上面的圆盘移到另一个柱子的最上面。请输出移动过程。

 该问题用递归来实现较为简单方便

技术分享图片

 

技术分享图片

 

技术分享图片

 

 技术分享图片

 

 

 代码:

def han(n,a,b,c):
    if n==1:
        print(a,‘-->‘,c)
        return None
    han(n-1,a,c,b)
    print(a,‘-->‘,c)
    han(n-1,b,a,c)

han(3,‘A‘,‘B‘,‘C‘)

  

 

汉诺塔

原文:https://www.cnblogs.com/blogzyq/p/15006106.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!