在斐波那契數列中,下一個數字是前兩個數字的總和,例如:0,1,1,2,3,5,8,13,21,34,55等。斐波那契數列的前兩個數字是0和1,第三個數字是前兩個數字的和,也就是 0+1=1,所以這裏第三個數字的值是 1 。
在java中有兩種方式編寫斐波那契數列(fibonacci)程式:
- 不使用遞歸實現斐波那契數列
- 使用遞歸實現斐波那契數列
1. 不使用遞歸實現斐波那契數列
下麵讓我們來看看在不使用遞歸實現斐波那契數列的java程式。
class FibonacciExample1 {
    public static void main(String args[]) {
        int n1 = 0, n2 = 1, n3, i, count = 10;
        System.out.print(n1 + " " + n2);// printing 0 and 1
        for (i = 2; i < count; ++i)// loop starts from 2 because 0 and 1 are
                                    // already printed
        {
            n3 = n1 + n2;
            System.out.print(" " + n3);
            n1 = n2;
            n2 = n3;
        }
    }
}
執行上面代碼,得到如下結果 -
0 1 1 2 3 5 8 13 21 34
2. 使用遞歸實現斐波那契數列
下麵看看使用遞歸實現斐波那契數列的java程式。
class FibonacciExample2 {
    static int n1 = 0, n2 = 1, n3 = 0;
    static void printFibonacci(int count) {
        if (count > 0) {
            n3 = n1 + n2;
            n1 = n2;
            n2 = n3;
            System.out.print(" " + n3);
            printFibonacci(count - 1);
        }
    }
    public static void main(String args[]) {
        int count = 10;
        System.out.print(n1 + " " + n2);// printing 0 and 1
        printFibonacci(count - 2);// n-2 because 2 numbers are already printed
    }
}
執行上面代碼,得到如下結果 -
0 1 1 2 3 5 8 13 21 34
						上一篇:
								Java基礎實例程式
												下一篇:
								Java面向對象(OOP)概念
					
					