帮我写一个汉诺塔的代码
时间: 2023-06-16 17:03:42 浏览: 83
汉诺塔的代码
好的,以下是 Python3 的汉诺塔代码实现:
```python
def move(n, src, dst, mid):
if n == 1:
print(src, '->', dst)
else:
move(n-1, src, mid, dst)
print(src, '->', dst)
move(n-1, mid, dst, src)
n = int(input('请输入汉诺塔层数:'))
move(n, 'A', 'C', 'B')
```
其中,move 函数是一个递归函数,它的参数含义如下:
- n:当前层数,也是需要移动的盘子数量。
- src:起始柱子的名称。
- dst:目标柱子的名称。
- mid:中间柱子的名称。
当 n 为 1 时,直接将盘子从起始柱子移动到目标柱子;当 n 大于 1 时,先将 n-1 个盘子从起始柱子经过目标柱子移动到中间柱子,然后将最后一个盘子从起始柱子移动到目标柱子,最后将 n-1 个盘子从中间柱子经过起始柱子移动到目标柱子。这样就完成了汉诺塔的移动。
阅读全文