fibonacii数列(斐波那契数列)的递归实现及循环实现

来源:互联网 发布:库存表软件 编辑:程序博客网 时间:2024/05/29 11:36
public class Fibonacii {public static long fibo(int num){  //递归方法if(num==1||num==2)   //定义出口return 1;return fibo(num-1)+fibo(num-2);//定义相似递归体}public static long fibo2(int num){  //循环方法if(num==1||num==2)return 1;int long=0;  //总和long current=1;long next=1;for(int i=2;i<num;i++){sum=current+next;//前两个数相加current=next;//移动位置next=sum;}return sum;}public static void main(String[] args) {System.out.println(fibo2(3));}}

该递归的执行过程类似于树的深度优先搜素,搜索到最深一个元素再返回。如下图(箭头上出下回)。另外循环方法性能明显优于递归方法,递归函数实参过大计算不出结果,但不报错,如fibo(100)。



0 0
原创粉丝点击