move(3, "a", "b", "c")
n=3: //开始从a上移动n-1即2个盘子通过c移动到b,以腾出c供a最后一个盘子移动
move(2, "a","c","b")
n=2: //开始进行n=2的一个递归,把当前a('a')柱上的n-1个盘子通过c('b')移动到b('c')
move(1, "a", "b", "c")
n=1: //n=2的第一个递归完成,打印结果,执行当前子函数剩余代码
print("a", "->", "c")
move(1, "a", "c", "b")
n=1: print("a", "->", "b") move(1, "c", "a", "b")
n=1: print("c", "->", "b")
//到这里完成了a柱上面的n-1即是2个盘子的移动//开始把a柱上最后一个盘子移动到c柱上move(1, "a", "b", "c")
n=1: print("a", "->", "c") //到这里完成移动a柱上的最后一个盘子到c柱上 move(2, "b", "a", "c")
n=2://开始进行n=2的第二个递归,即把当前b('b')的盘子(n-1个)通过a('a')移动到c('c')上
move(1, "b", "c", "a")
n=1: //n=2 的第二个递归完成,打印结果并执行当前子函数的剩余代码
print("b", "->", "a") move(1, "b", "a", "c")
n=1: print("b", "->", "c") move(1, "a", "b", "c")
n=1: print("a", "->", "c") //到这里把b上的盘子通过a移动到c,//整个代码执行完毕,汉诺塔移动完成