斐波那契数列

题目描述

大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。
n<=39

思路

1.可以使用递归求解,也可以使用动态规划求解。
2.推荐使用动态规划求解,防止递归栈太深导致栈溢出。

Java代码实现

    /**
     * 递归解法
     */
    public int Fibonacci(int n) {
        if(n < 1)
            return n;
        if(n==1 || n == 2)
            return 1;
        return Fibonacci(n-1)+Fibonacci(n-2);
    }

    /**
     * 动态规划解法
     */
    public int Fibonacci(int n) {
        int[] dp = new int[n+1];
        dp[1] = dp[2] = 1;

        for (int i = 3; i <=n ; i++) {
            dp[i] = dp[i-1] + dp[i-2];
        }
        return dp[n];
    }
全部评论

相关推荐

丿南烟丶:黑白模板吧,不要这样花哨的。 主要成就太空了,和获奖融在一起,写一两行就行了。 职业技能不要这样排,就传统的掌握精通什么什么然后举例补充的一些重要技术点。 自我介绍说实话也没啥用,可以删了。 把自己的两个项目方案细节补充上去,为什么这样设计,怎么设计,成果是什么按star法则来写 你要引导面试官来问你的技能和项目,你的获奖和自我介绍别人可能看都不看一眼或者不太在乎,重要的是展示你能干活的能力
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务