请你输出斐波那契数列的第n项(从0开始,第0项为0)

空扰寡人 提交于 2019-12-02 02:58:57

方案一:

public class Solution {

public int Fibonacci(int n) {

    if(n==0)
	
        return 0;
		
    if(n<3)
	
        return 1;
   return Fibonacci(n-1)+Fibonacci(n-2);
    
    
}

}

方案二:

public class Solution {

public int Fibonacci(int n) {
    if(n==0)
        return 0;
    if(n<3)
        return 1;
   int f1=1;
   int f2=1;
   int result=0;
    for(int i=3;i<=n;i++){        
        result=f1+f2;;
        f1=f2;
        f2=result;
    }
    
    return result;
    
    
}

}

时间和内存对比 方案 时间 内存 方案一 772 4416 方案二 21 9104

建议:尽量用方案二,方案二一般更省内存,但方案一的思想更简单,代码量更少

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!