递归的应用——斐波那契数列汉诺塔(Java实现)

Posted 人工智能之路上的菜鸡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了递归的应用——斐波那契数列汉诺塔(Java实现)相关的知识,希望对你有一定的参考价值。

package ch06;

public class Fibonacci {
    public static int getNumber(int n) {
        if(n == 1) {
            return 0;
        } else if(n == 2){
            return 1;
        } else {
            return getNumber(n - 1) + getNumber(n - 2);
        }
    }
}
package ch06;

public class TestFibonacci {
    public static void main(String[] args) {
        System.out.println(Fibonacci.getNumber(5));
    }
}

 


 

package ch07;

public class HanoiTower {

    /**
     * 移动盘子 
     * topN:移动的盘子数 
     * from:起始塔座 
     * inter:中间塔座 
     * to:目标塔座
     */
    public static void doTower(int topN, char from, char inter, char to) {
        if (topN == 1) {
            System.out.println("盘子1,从" + from + "塔座到" + to + "塔座");
        } else {
            doTower(topN - 1, from, to, inter);
            System.out.println("盘子" + topN + ",从" + from + "塔座到" + to + "塔座");
            doTower(topN - 1, inter, from, to);
        }
    }
}
package ch07;

public class TestHanoiTower {
    public static void main(String[] args) {
        HanoiTower.doTower(5, ‘A‘, ‘B‘, ‘C‘);
    }
}

 

以上是关于递归的应用——斐波那契数列汉诺塔(Java实现)的主要内容,如果未能解决你的问题,请参考以下文章

方法递归(斐波那契数列,青蛙跳台阶,汉诺塔问题)

方法递归(斐波那契数列,青蛙跳台阶,汉诺塔问题)

go 实现几个递归经典案例(阶乘斐波那契数列二分查找汉诺塔)

Python基础——递归及其经典例题(阶乘斐波那契数列汉诺塔)

Python基础——递归及其经典例题(阶乘斐波那契数列汉诺塔)

简述java递归与非递归算法,0-100求和,斐波那契数列,八皇后,汉诺塔问题