def hanoi(n,x,y,z):
if n == 1:
print (x,'--->',z)
else:
hanoi(n-1,x,z,y)#将前n—1个盘子从x移动到y上
print (x,'--->',z)#将底下的最后一个盘子从x移动到z上
hanoi(n-1,y,x,z)#将y上的n—1个盘子从y移动到z上
n = int(input('请输入汉诺塔的层数'))
hanoi(n,'1','2','3')
python计算汉诺塔
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 递归的原则 递归算法必须具有基本情况。 递归算法必须改变其状态并向基本情况靠近。 递归算法必须以递归方式调用自身 ...
- 汉诺塔:汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱...