斐波那契数列递归算法

    xiaoxiao2021-03-25  67

    问题描述:

    有一对小兔子,从出生后第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。按此规律,假设没有兔子死亡,第一个月有一对刚出生的小兔子,问第n个月有多少对兔子?

    这是斐波那契数列,数列表现为:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368........

    根据这个数列,我们可以得到第N(N>2)天的兔子书的计算公式为f(n)=f(n-1)+f(n-2);

    所以可以用递归来求解

    public class Test { public static void main(String[] args) { Test test=new Test(); System.out.println("第11个是:"+test.fun(11)); } public int fun(int n){ if(n==1 || n==2) return 1; else { return fun(n-1)+fun(n-2); } } } 结果为:

    第11个是:89

    转载请注明原文地址: https://ju.6miu.com/read-38510.html

    最新回复(0)