天天看點

Java利用BigInteger計算斐波那契數列(不死神兔)

package demo01;

import java.math.BigInteger;

import java.util.ArrayList;

public class Test05 {

    public static void main(String[] args) {

        ArrayList<BigInteger> arr  = new ArrayList<BigInteger>();

        BigInteger b1 = new BigInteger("1");//初始值為1對

        arr.add(b1);

        BigInteger b2 = new BigInteger("1");//第1個月還是1對

        arr.add(b2);

        int n = 10000;//第N個月

        for (int i = 2; i <= n; i++) {

            BigInteger a = arr.get(i-1);

            BigInteger b = arr.get(i-2);

            BigInteger c = a.add(b);//注意這裡的.add是BigInteger的方法,結果相當于a+b

            arr.add(c);//這裡是ArrayList的.add方法,表示将c加入集合

        }

        System.out.println(arr.get(n));

    }

}

轉自:https://blog.csdn.net/javae100/article/details/79105238