用Java写一个计算递归
时间: 2023-09-11 22:06:51 浏览: 89
好的,下面是一个用Java实现的计算斐波那契数列的递归函数:
```
public static int fibonacci(int n) {
if (n <= 1) {
return n;
} else {
return fibonacci(n-1) + fibonacci(n-2);
}
}
```
这个递归函数接受一个整数参数n,根据斐波那契数列的定义,如果n小于等于1,则直接返回n。否则,递归调用fibonacci函数并返回前两项的和。
你可以通过以下代码调用上述函数并输出结果:
```
int n = 10; // 求斐波那契数列的第10项
int result = fibonacci(n);
System.out.println("斐波那契数列的第" + n + "项是:" + result);
```
输出结果为:斐波那契数列的第10项是:55
相关问题
用java写出一个递归算法
好的,以下是一个用 Java 写的递归算法示例:
public class RecursionExample {
public static void main(String[] args) {
int n = 5;
int result = factorial(n);
System.out.println("Factorial of " + n + " is " + result);
}
public static int factorial(int n) {
if (n == 0) {
return 1;
} else {
return n * factorial(n - 1);
}
}
}
这个程序计算了一个数的阶乘,如果输入 5,输出结果为 120。
用java写一个递归循环
循环和递归是两种不同的迭代方式。循环是通过迭代器在一定次数内重复执行一组指令,而递归是通过函数在一定条件下重复调用自身来实现的。下面是一个使用Java编写的递归和循环示例:
递归代码示例:
```java
public static int factorial(int num) {
if (num == 0) { // 基本条件
return 1;
} else { // 递归调用
return num * factorial(num - 1);
}
}
// 调用递归函数
System.out.println(factorial(5)); // 输出:120
```
循环代码示例:
```java
public static int factorial(int num) {
int result = 1;
for (int i = 1; i <= num; i++) { // 循环条件
result *= i;
}
return result;
}
// 调用循环函数
System.out.println(factorial(5)); // 输出:120
```
以上两个函数实现的功能相同:计算一个数的阶乘。递归方式使用了基本条件和递归调用,而循环方式使用了一个迭代器来循环执行一组指令。
阅读全文