首页 > 编程语言 > 详细

汉诺塔问题python

时间:2018-04-14 10:01:03      阅读:191      评论:0      收藏:0      [点我收藏+]

count = 0
def hanoi(n,src,mid,dst):
global count
if n == 1:
print("{}:{}->{}".format(1,src,dst))
count += 1
else:
hanoi(n-1,src,dst,mid)
print("{}:{}->{}".format(n, src, dst))#第n个圆盘从第src位置移动到dst位置
count += 1
hanoi(n-1,mid,src,dst)
hanoi(3,"A","B","C")
print(count)
#不显示对应序列号圆盘的简练写法
def move(n, a, b, c):
if n == 1:
print(a, ‘-->‘, c)
else:
move(n-1,a,c,b)
print(a,‘-->‘,c)
move(n-1,b,a,c)
move(3,"A","B","C")

汉诺塔问题python

原文:https://www.cnblogs.com/zhenshj/p/8830267.html

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