解题方法:C++;
解题思路:动态规划;直接定义数组存储斐波那契数列的每一项数值,根据规律可计算得出任何一项:每一项的值是前两项的和。
代码如下,有建议请指出:
class Solution {
public:
int Fibonacci(int n) {
int a[40]={0};
a[0]=0;
a[1]=1;
a[2]=1;
for(int i = 3; i <= n; i++){
a[i]=a[i-1]+a[i-2];
}
int num=a[n];
return num;
}
};
public:
int Fibonacci(int n) {
int a[40]={0};
a[0]=0;
a[1]=1;
a[2]=1;
for(int i = 3; i <= n; i++){
a[i]=a[i-1]+a[i-2];
}
int num=a[n];
return num;
}
};