【Python】用Python解决汉诺塔问题

汉诺塔的移动可以用递归函数非常简单地实现。
(源自廖雪峰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的盘子移动到c
n = input('n?')
n = int(n)
move(n, 'A', 'B', 'C')
    原文作者: 汉诺塔问题
    原文地址: https://blog.csdn.net/fancyvin/article/details/56295534
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞