python 递归实现汉诺塔
2018-01-22 11:00
337 查看
def move(n,a,b,c): if n == 1: print(a,'-->',c) else: move(n-1,a,c,b) move(1,a,b,c) move(n-1,b,a,c)
@params: n,a上的盘子个数;a,b,c分别为三根柱子
当只有一个盘子时,直接从a-->c;当盘子书不为1时,先将a上边n-1个从a移动到b ,move(n-1,a,c,b)然后将a剩下的1个从a移动到c,
move(1,a,b,c)
最后将b柱子上的所有盘子移动到c
move(n-1,b,a,c)
测试一下:
move(3,'A','B','C')答案:
A --> C A --> B C --> B A --> C B --> A B --> C A --> C [Finished in 0.2s]
相关文章推荐
- Python小练习 - 递归实现“汉诺塔”
- 【Python编程】 汉诺塔的递归实现
- 汉诺塔问题的python递归实现
- python海龟turtle递归 汉诺塔的动画实现
- 用Python递归实现汉诺塔问题
- 使用python实现递归版汉诺塔示例(汉诺塔递归算法)
- 汉诺塔与递归之C++ 和Python实现
- 关于递归的总结——汉诺塔、素因数的求解(Python实现)
- 汉诺塔递归Python实现
- Python递归实现汉诺塔
- 汉诺塔,python递归实现解法步骤
- python 递归实现 汉诺塔
- 使用python实现递归版汉诺塔示例(汉诺塔递归算法)
- 经典递归解决汉诺塔问题 python实现
- 递归经典案例汉诺塔 python实现
- python-汉诺塔递归实现
- 递归实现汉诺塔问题(python)
- Python 递归实现汉诺塔
- python实现汉诺塔(递归实现)
- Python递归实现汉诺塔详细解析