求python大神帮忙解释一下 这个汉诺塔程序的步骤
defmove(n,a,b,c):ifn==1:printa,'-->',creturnmove(n-1,a,c,b)printa,'-->',cmove(n-1,b,a...
def move(n, a, b, c):
if n ==1:
print a, '-->', c
return
move(n-1, a, c, b)
print a, '-->', c
move(n-1, b, a, c)
move(4, 'A', 'B', 'C')
麻烦写的详细些,把每一个结果的程序走的步骤都写下来,谢谢了! 展开
if n ==1:
print a, '-->', c
return
move(n-1, a, c, b)
print a, '-->', c
move(n-1, b, a, c)
move(4, 'A', 'B', 'C')
麻烦写的详细些,把每一个结果的程序走的步骤都写下来,谢谢了! 展开
3个回答
展开全部
def move(n, a, b, c):
if n ==1: #如果要移动的是第1个盘子
print a, '-->', c #直接将其从a移到c
return
move(n-1, a, c, b) #否则递归移动第1~n-1个盘子到b柱上
print a, '-->', c #此时a柱上只剩第n个盘子,直接将其从a移动到c
move(n-1, b, a, c) #继续递归移动第1~n-1个盘子到c柱上
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询