两种方法实现斐波那契数列。要求: 1、分别使用递归和迭代(循环)两种方法,构建两个斐波那契数列方法。 2、返回值为数组类型 3、构建数组输出方法 4、Main方法中调用上述构建方法
时间: 2024-05-11 12:17:28 浏览: 70
好的,我可以为您提供两种实现斐波那契数列的方法,分别使用递归和迭代。
1. 递归方法实现斐波那契数列:
```java
public static int[] fibonacciByRecursion(int n) {
int[] result = new int[n];
for (int i = 0; i < n; i++) {
result[i] = fibonacci(i);
}
return result;
}
public static int fibonacci(int n) {
if (n == 0 || n == 1) {
return n;
} else {
return fibonacci(n - 1) + fibonacci(n - 2);
}
}
```
2. 迭代方法实现斐波那契数列:
```java
public static int[] fibonacciByIteration(int n) {
int[] result = new int[n];
if (n == 1) {
result[0] = 0;
} else if (n >= 2) {
result[0] = 0;
result[1] = 1;
for (int i = 2; i < n; i++) {
result[i] = result[i - 1] + result[i - 2];
}
}
return result;
}
```
构建数组输出方法:
```java
public static void printArray(int[] array) {
for (int i = 0; i < array.length; i++) {
System.out.print(array[i] + " ");
}
}
```
在 Main 方法中调用上述构建方法:
```java
public static void main(String[] args) {
int n = 10;
int[] fibonacciArrayByRecursion = fibonacciByRecursion(n);
int[] fibonacciArrayByIteration = fibonacciByIteration(n);
printArray(fibonacciArrayByRecursion);
System.out.println();
printArray(fibonacciArrayByIteration);
}
```
注意:斐波那契数列的第一项是0,不是1。
阅读全文
相关推荐















