# coding: utf-8
def my_print(args):
print args
# 将n个盘子从a移动到c, 以b为中介
def move(n, a, b, c):
if n == 1:
# 若只有一个盘子,直接从a移动到c
my_print((a + '---->' + c))
else:
# 若不止一个盘子,先把上面到n-1个盘子,从a移动到b,以c为中介
move(n - 1, a, c, b)
# 然后把最下面到盘子从a移动到c (以b为中介)
move(1, a, b, c)
# 最后把n-1个盘子从b移动到c, 以a为中介
move(n - 1, b, a, c)
move(3, 'a', 'b', 'c')
Python 实现汉诺塔算法
最新推荐文章于 2022-07-22 18:01:12 发布