斐波那契数列---兔子繁殖题

斐波那契数列—兔子繁殖题

如果说兔子在出生两个月后,就有繁殖能力,一对兔子每个月能生出一对小兔子来。假设所有兔子都不会死去,能够一直干下去,那么一年以后可决繁殖多少对兔子呢?

斐波那契数列的迭代实现

我们都知道兔子繁殖能力是惊人的,如下图:

所经过的月数 1 2 3 4 5 6 7 8 9 10 11 12
兔子的总对数 1 1 2 3 5 8 13 21 34 55 89 144

我们可以用数学函数来定义:
在这里插入图片描述

找出了规律后,再利用递归,问题就迎刃而解了

代码如下:

package com.lbl;

/*
如果说兔子在出生两个月后,就有繁殖能力,一对兔子每个月能生出一对小兔子来。
假设所有兔子都不会死去,能够一直干下去,那么一年以后可决繁殖多少对兔子呢?

所经过的月数:1 2 3 4 5 6 7  8  9  10 11 12
兔子的总对数:1 1 2 3 5 8 13 21 34 55 89 144
 */
public class 兔子繁殖 {
    
    
    public static void main(String[] args) {
    
    

        System.out.println(count(12));
    }

    public static int count(int n){
    
    
        if (n == 1 || n==2) {
    
    
            return 1;
        }
        return count(n-1)+count(n-2);
    }

}

运行结果:

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_37924905/article/details/108550105
今日推荐