《剑指offer》-斐波那契数列

简介: 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。n

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

这么直接的问fibonacci,显然是迭代计算。递归的问题在于重复计算,而迭代则避免了这一点:递归是自顶向下,会重复产生子问题;而迭代是自底向上,一步一个脚印,没有重复的子问题。

class Solution {
public:
    int Fibonacci(int n) {
        if(n<=1) return n;
        int a = 0; // f(0)
        int b = 1; // f(1)
        for(int i=2; i<=n; i++){
            b = a + b;
            a = b - a;
        }
        return b;
    }
};
目录
相关文章
【剑指offer】-斐波那契数列-07/67
【剑指offer】-斐波那契数列-07/67
|
9月前
LeedCode_04-斐波那契数列(剑指offer-10)
LeedCode_04-斐波那契数列(剑指offer-10)
|
4月前
剑指Offer LeetCode 面试题10- I. 斐波那契数列
剑指Offer LeetCode 面试题10- I. 斐波那契数列
23 0
|
4月前
牛客网-斐波那契数列
牛客网-斐波那契数列
14 0
|
7月前
剑指offer-9.斐波那契数列
剑指offer-9.斐波那契数列
24 1
|
10月前
剑指offer 09. 斐波那契数列
剑指offer 09. 斐波那契数列
28 0
|
10月前
|
存储
剑指Offer - 面试题10:斐波那契数列
剑指Offer - 面试题10:斐波那契数列
56 0
|
11月前
|
算法
斐波那契数列两种算法和青蛙跳台阶的两种实际问题
当我们看到这样的题时,心想就是一个简单的递归调用么。 但是,我们要看到这种算法的不足之处——效率低下。 首先简单的介绍一下 :
68 0
斐波那契数列(剑指offer 10-I)
斐波那契数列(剑指offer 10-I)
|
存储 算法
LeetCode题解—斐波那契数列
今天继续算法题:斐波那契数列
107 0