用python解决汉诺塔问题
来源:互联网 发布:免费协作软件 编辑:程序博客网 时间:2024/06/05 17:53
虽然不是自己想出来怎么做的,但是感觉对这个问题的理解又更进了一步,以前用java实现时想了好久都想的很迷糊,还是python语言简洁,特好理解,如下:
题目:
汉诺塔:汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。
解法:
def move(n,a,b,c): if n==1: print(a,'-->',c) else: move(n-1,a,c,b) #将前n-1个盘子从a移动到b上 move(1,a,b,c) #将最底下的最后一个盘子从a移动到c上 move(n-1,b,a,c) #将b上的n-1个盘子移动到c上move(3,'A','B','C')
1 0
- 用python解决汉诺塔问题
- 用python解决汉诺塔问题
- 【Python】用Python解决汉诺塔问题
- Python递归解决汉诺塔问题
- C++/python解决汉诺塔问题
- python 用解决约瑟夫问题
- 【Python学习】Python解决汉诺塔问题
- Python初学笔记:递归解决汉诺塔问题
- Python练习(2):递归解决汉诺塔问题
- python解决汉诺塔问题极其简单
- 经典递归解决汉诺塔问题 python实现
- 用Python解决了个数学问题
- 用python-pulp解决线性规划问题
- 用Python的pulp解决线性规划问题
- Python:用Numpy解决线性代数的问题
- Python解决打靶问题
- python解决乱码问题
- python解决中文问题
- STL map的使用
- Android中Looper的实现原理,为什么调用Looper.prepare()就在当前线程关联了一个Looper对象,它是如何实现的。
- PickerView
- 【交换机在江湖】第十四章 VLAN通信篇
- 双连通小结
- 用python解决汉诺塔问题
- OC与runtime
- 仿腾讯 QQ 和 Skype 通过URL触发自己的程序
- Java基础--------正则表达式
- 自定义View-Same投票功能
- Swift面向协议编程初探
- 【数据结构】最小堆实现哈夫曼树构造与解码
- 关于faad的编译
- linux下vi命令大全