受限的汉诺塔python代码(当n为4时)
时间: 2024-10-18 18:19:13 浏览: 42
汉诺塔游戏 Python源代码
受限的汉诺塔是一个经典的递归问题,涉及到将一堆盘子从一根柱子移动到另一根柱子,规则是每次只能移动最上面的一块盘子,并且大盘子不能放在小盘子之上。以下是Python代码,用于解决当n=4时的汉诺塔问题:
```python
def hanoi(n, source, auxiliary, target):
if n > 0:
# 递归地将n-1个盘子从source移动到auxiliary
hanoi(n - 1, source, target, auxiliary)
# 将最大的盘子从source移动到target
print(f"Move disk {n} from {source} to {target}")
# 递归地将剩余的n-1个盘子从auxiliary移动到target
hanoi(n - 1, auxiliary, source, target)
# 调用函数,开始游戏(n=4)
hanoi(4, 'A', 'B', 'C')
```
在这个代码里,`A`、`B`和`C`代表三个柱子,函数会按照汉诺塔的传统步骤一步步模拟移动过程。当你运行这段代码时,它会输出四个盘子如何在规定条件下从'A'柱子移动到'C'柱子。
阅读全文