import java.util.Scanner;
/*
斐波那契数列,选择可以输出几个数
*/
public class Febonaci{
public static void main(String[] args){
//创建Scanner对象
/*Scanner sc = new Scanner(System.in);
System.out.print("请输入要输出几个数:");
int number = sc.nextInt();
int x = 1;
int y = 1;
int z = 0;
for(int i = 1;i<=number;i++){
if(i == 1 || i == 2){
System.out.print(1 + "\t");
}else{
z = x + y;
x = y;
y = z;
System.out.print(z + "\t");
}
}*/
for(int i = 1;i <= 10;i++){
System.out.print(getNumber(i) + "\t");
}
}
/*
递归算法:程序在运行的过程中,发生自身调用自身的情况
注意:
1、如果使用循环能解决问题,尽量不要使用递归算法
在使用递归算法的时候会加大资源的消耗
如果递归算法的深度过于深,可能会造成栈溢出
2、如果使用其他方法都不能解决问题,就必须要使用递归算法
如:输出某个磁盘下所有的文件名
*/
public static int getNumber(int number){
if(number == 1 || number == 2){
return 1;
}else{
return getNumber(number - 1) + getNumber(number - 2);
}
}
}
递归实现斐波那契数列
该博客展示了如何使用Java编程语言实现斐波那契数列的递归算法,详细注释了代码逻辑,并指出递归算法的优缺点。尽管递归可能导致资源消耗增加和栈溢出,但在某些情况下是必要的。博主通过一个简单的循环输出了前10个斐波那契数。

被折叠的 条评论
为什么被折叠?



