zxy0307's picture
Upload 2300 files
0284885 verified
Raw History Blame Contribute Delete
1.36 kB
package Case2_package;
public class Test {
public static void main(String[] args) {
/*
有一对兔子,从出生后第三个月起,每个月都生一对兔子
小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问第十二个月的兔子对数为多少?
1月:1
2月:1
3月:2
4月:3
5月:5
……
特点:从第三个数据开始,是前两个数据和(斐波那契数列)
*/
//求解1:
//1、创建一个长度为12的数组
int[] arr = new int[12];
//2、手动给0索引和1索引的数据进行赋值
arr[0] = 1;
arr[1] = 1;
//3、利用循环给剩余的数据进行赋值
for (int i = 2; i < arr.length; i++) {
arr[i] = arr[i - 1] + arr[i - 2];
}
//4、获取最大索引上的数据即可
System.out.println(arr[11]);
//求解2:
//递归的方式去完成
//1、递归的出口
//2、找到递归的规律
System.out.println(getSum(12));
}
public static int getSum(int month) {
if (month == 1 || month == 2) {
return 1;
}
return getSum(month - 1) + getSum(month - 2);
}
}