def hanoi(n, a, b, c): if n == 1: print(a, "-->", c) else: hanoi(n-1, a, c, b) # 将前n-1个盘子从A移动到B上 print(a, "-->", c) # 将最底下的最后一个盘子从A移动到C上 hanoi(n-1, b, a, c) # 将B上的n-1个盘子移动到C上

n = 64 hanoi(n, 'A', 'B', 'C')

汉诺塔问题Hanoi古代有一个梵塔塔内有三个座A、B、CA座上有64个盘子盘子大小不等大的在下小的在上《如图。有一个和尚想把这64个盘子从A座移到C座但每次只能允许移动一个盘子并且在移动过程中3个座上的盘子始终保持大盛在下小盘在上。在移动过程中可以利用B座要求输出移动的步骤。python程序

原文地址: https://www.cveoy.top/t/topic/cHCU 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录