Download Algorithm_project/Case_module/src/Case2_package/Test.java from zxy0307/Java: direct link, hf CLI and curl.
- Browser
- Download file 1.36 kB
-
https://huggingface.co/zxy0307/Java/resolve/main/Algorithm_project/Case_module/src/Case2_package/Test.java
- Command line
-
hf download hf://zxy0307/Java/Algorithm_project/Case_module/src/Case2_package/Test.java
-
curl -L -o Test.java https://huggingface.co/zxy0307/Java/resolve/main/Algorithm_project/Case_module/src/Case2_package/Test.java
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); | |
| } | |
| } | |