递归的特点 1.调用自身 2.结束条件 演示 将n个圆盘看作两部分,一部分是A柱最底下要移动到目标C柱的最大的圆盘,另一部分是其他n-1个较小的圆盘。 n-1个小圆盘就是比n个圆盘规模更小的问题。 代码实现 def hanoi(n, a, b, c): # 参数:几个圆盘,柱子 if n>0: # 当较小圆盘为0则停止 hanoi(n-1, a, c, b) # 较小圆盘整体从a经过c移动到b print("从%s移动到%s" % (a, c)) # 最大圆盘移动 hanoi(n-1, b, a, c) # 较小圆盘整体从b经过a移动到c hanoi(3,'A','B','C') 移动步骤