汉诺塔--》(递归函数)

Posted jjk-xiaoxuetu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了汉诺塔--》(递归函数)相关的知识,希望对你有一定的参考价值。

def hano(n,a,b,c):#n表示盘子数量,a表示a盘子,b表示b盘子,c表示c盘子
    if n==1:
        print(a,-->,c)
        return None
        
    if n==2:
        print(a,-->,b)
        print(a,-->,c)
        print(b,-->,c)
        return None
    #n最终都是转化为==1或==2
    hano(n-1,a,c,b)#将a塔上的n-1个盘子借助c塔,放到b塔上去
    print(a,-->,c)
    hano(n-1,b,a,c)#将b塔上的n-1个盘子借助a塔,放到c塔上去
    
a=A
b=B
c=C
n=4
hano(n,a,b,c)

 

以上是关于汉诺塔--》(递归函数)的主要内容,如果未能解决你的问题,请参考以下文章

递归和迭代算法 [汉诺塔问题]

python汉诺塔非递归

从"汉诺塔"经典递归到JS递归函数

函数递归——汉诺塔经典题型

汉诺塔递归问提

设计递归函数模拟汉诺塔游戏