递推算法的核心——公式(按照公式写递归)

斐波拉切数列的公式:F(n)=F(n-2)+F(n-1)

以此我们得出兔子生崽的递推算法:其中有1对兔子,每个月都可以生一对兔子,但是任何的兔子都必须2个月大,即第3个月才有生育能力。

import java.util.Scanner;

/**
 * Created by Administrator on 2018-02-15.
 */
public class Fibonacci {
    public static int FibonacciQty(int n) {
        int t1,t2;
        if(n == 1 || n == 2) {
            return 1;
        }else {
            t1 = FibonacciQty(n-1);
            t2 = FibonacciQty(n-2);
            return t1+t2;
        }
    }
    public static void main(String[] args) {
        System.out.println("递推算法求解兔子产仔问题!");
        System.out.print("请先输入时间:");
        Scanner input = new Scanner(System.in);
        int n = input.nextInt();
        int num = Fibonacci.FibonacciQty(n);
        System.out.println("经过"+n+"月的时间,共能繁殖成"+num+"对兔子!");
    }
}

猜你喜欢

转载自my.oschina.net/u/3768341/blog/1622044