通过Java用递归输出斐波那契前15项
时间: 2023-03-27 13:03:17 浏览: 69
好的,以下是通过Java用递归输出斐波那契前15项的代码:
```
public class Fibonacci {
public static void main(String[] args) {
for (int i = 1; i <= 15; i++) {
System.out.print(fibonacci(i) + " ");
}
}
public static int fibonacci(int n) {
if (n == 1 || n == 2) {
return 1;
} else {
return fibonacci(n - 1) + fibonacci(n - 2);
}
}
}
```
输出结果为:1 1 2 3 5 8 13 21 34 55 89 144 233 377 610
相关问题
java用递归和非递归实现斐波那契数列,并输出
在Java中,我们可以使用递归和循环两种常见的方法来实现斐波那契数列。
**递归实现:**
递归是一种直接将问题分解成更小版本自身的问题求解方式。对于斐波那契数列,每个数字是前两个数字之和。递归版代码如下:
```java
public class FibonacciRecursion {
public static int fibonacci(int n) {
if (n <= 1) {
return n;
} else {
return fibonacci(n - 1) + fibonacci(n - 2);
}
}
public static void main(String[] args) {
int num = 10; // 想要计算的第几个斐波那契数
for (int i = 0; i < num; i++) {
System.out.print(fibonacci(i) + " ");
}
}
}
```
**非递归实现(循环):**
非递归方法通常效率更高,因为它避免了重复计算。这里使用迭代的方式实现:
```java
public class FibonacciNonRecursion {
public static int fibonacci(int n) {
if (n <= 1) {
return n;
}
int a = 0, b = 1, c = 0;
for (int i = 2; i <= n; i++) {
c = a + b;
a = b;
b = c;
}
return c;
}
public static void main(String[] args) {
int num = 10; // 想要计算的第几个斐波那契数
for (int i = 0; i < num; i++) {
System.out.print(fibonacci(i) + " ");
}
}
}
```
java使用递归方法实现斐波那契数列前20项
下面是使用递归方法实现斐波那契数列前20项的Java代码:
```java
public class Fibonacci {
public static void main(String[] args) {
for (int i = 1; i <= 20; i++) {
System.out.print(fibonacci(i) + " ");
}
}
public static int fibonacci(int n) {
if (n == 1 || n == 2) {
return 1;
} else {
return fibonacci(n - 1) + fibonacci(n - 2);
}
}
}
```
输出结果为:
```
1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765
```
阅读全文