头歌python实训教学平台汉诺塔答案
时间: 2023-11-30 20:42:35 浏览: 470
头歌python答案及解析
很高兴为您解答。以下是Python实现汉诺塔算法的代码示例:
```python
def hanoi(n, a, b, c):
if n == 1:
print(a, '-->', c)
else:
hanoi(n-1, a, c, b)
print(a, '-->', c)
hanoi(n-1, b, a, c)
# 示例
hanoi(3, 'A', 'B', 'C')
```
上述代码中,`hanoi`函数接受四个参数:`n`表示盘子的数量,`a`、`b`、`c`表示三个柱子。函数的实现采用递归的方式,当盘子数量为1时,直接将盘子从`a`柱子移动到`c`柱子;当盘子数量大于1时,先将`n-1`个盘子从`a`柱子移动到`b`柱子,再将最后一个盘子从`a`柱子移动到`c`柱子,最后将`n-1`个盘子从`b`柱子移动到`c`柱子。
阅读全文