汉诺塔Hanoi
汉诺塔Hanoi
一个圆盘

if (n==1){
            System.out.println(a+" -----> "+c);    //a ---> c
        }
两个圆盘

 else{
            hanoi(n-1,a,c,b);                   //a ---> b
            System.out.println(a+" -----> "+c);    //a ---> c
            hanoi(n-1,b,a,c);                   //b ---> c
        }
多个圆盘

 //将汉诺塔上a上的全部按规则移到c上,b作中间载物。n为需要移动的块数
    public static void hanoi(int n ,String a,String b,String c){
        if (n==1){
            System.out.println(a+" -----> "+c);    //a ---> c
        }
        else{
            hanoi(n-1,a,c,b);                   //a ---> b
            System.out.println(a+" -----> "+c);    //a ---> c
            hanoi(n-1,b,a,c);                   //b ---> c
        }
    }
本文来自博客园,作者:不吃紫菜,遵循CC 4.0 BY-SA版权协议,
转载请附上原文出处链接:https://www.cnblogs.com/buchizicai/p/hanoi.html及本声明;
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号