汉诺塔的移动可以用递归函数非常简单地实现。 (源自廖雪峰Python3教程课后练习)
# -*- coding: utf-8 -*-def move(n, a, b, c): if n == 1: PRint(a, '-->', c)#只有一个盘子时,直接从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的盘子移动到cn = input('n?')n = int(n)move(n, 'A', 'B', 'C')新闻热点
疑难解答