只为成功找方向,不为失败找借口

每天都不能停止前进的脚步
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

【未通过】LintCode #366 斐波纳契数列

Posted on 2018-04-26 11:07  冰碟  阅读(223)  评论(0编辑  收藏  举报

实现:

public class Solution {
    /**
     * @param n: an integer
     * @return: an ineger f(n)
     */
    public int fibonacci(int n) {
        // write your code here
        
        return foo(n);
     
    }
    
    public int foo(int x){
        
        if(x == 1){
            return 0;
        }
        else if(x == 2){
            return 1;
        }
        
        return foo(x-2) + foo(x - 1);
    }
}

提交时提示:

Time Limit Exceeded

你的代码运行时间超过了限制,检查你的时间复杂度。TLE通常是由死循环造成的,思考一下你的时间复杂度是否是最优的。

 

求最优算法!