美文网首页
斐波那契数列

斐波那契数列

作者: youzhihua | 来源:发表于2019-12-09 18:20 被阅读0次

    题目描述

    大家都知道斐波那契数列,现在要求输入一个整数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];
        }
    

    相关文章

      网友评论

          本文标题:斐波那契数列

          本文链接:https://www.haomeiwen.com/subject/ggrigctx.html