raptor求斐波那契数列
时间: 2023-11-08 18:01:16 浏览: 250
斐波那契数列是一个数列,其中每个数字是前两个数字之和。根据给定的代码,可以使用集合、和递归三种方法来求解斐波那契数列。
使用集合方法:
```java
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
int count = 0;
list.add(1);
list.add(1);
for (int i = 0; i < 18; i++) {
list.add(list.get(i) + list.get(i + 1));
}
for (int a : list) {
count += a;
}
System.out.println("前20项的和为:" + count);
System.out.println("第20项的值为:" + list.get(19));
}
}
```
使用数组方法:
```java
public class Main {
public static void main(String[] args) {
int[] array = new int[20];
int count = 0;
array[0] = 1;
array[1] = 1;
for (int i = 2; i < 20; i++) {
array[i] = array[i - 1] + array[i - 2];
}
for (int a : array) {
count += a;
}
System.out.println("前20项的和为:" + count);
System.out.println("第20项的值为:" + array[19]);
}
}
```
使用递归方法:
```java
public class Main {
public static void main(String[] args) {
int count = 0;
for (int i = 1; i <= 20; i++) {
count += number(i);
}
System.out.println("前20项的和为:" + count);
System.out.println("第20项的值为:" + number(20));
}
public static int number(int num) {
if (num == 1 || num == 2) {
return 1;
} else {
return number(num - 2) + number(num - 1);
}
}
}
```
阅读全文