首页 > 代码库 > 函数递归——汉诺塔经典题型
函数递归——汉诺塔经典题型
理解汉诺塔游戏规则,有A,B,C座塔,将A塔上的圆盘移动到C塔上,当A塔只有一块圆盘时,直接移动到C塔,当A塔有N个圆盘时,需要将N-1个圆盘移动到B塔,然后将剩下的最底下圆盘移动到C。大盘不能压住小盘
汉诺塔游戏主要考虑到最底下圆盘的调用,每次的移动都假设到最底下圆盘。
其实到目前我还是不太明白
def move(n, x, y, z): if n==1: print (x,‘-->‘,z) return move(n-1,x,z,y)#将前n-1个盘子从x移动到y上 move(1,x,y,z)#将最底下的最后一个盘子从x移动到z上 move(n-1,y,x,z)#将y上的n-1个盘子移动到z上 move(10, ‘A‘, ‘B‘, ‘C‘)
函数递归——汉诺塔经典题型
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。