题目描述
大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。n<=39。
分析
本题需要考虑时间复杂度,递归实现复杂度太高,可以采用以空间换时间的策略,给定一个数组用来存储已经算出的数列项。
C++实现如下:
int Fibonacci(int n){
int Fib[40];
if(n == 0) Fib[0] = 0;
if(n == 1) Fib[1] = 1;
for(int i = 2;i<=n;i++) Fib[i] = Fib[i-1] + Fib[i-2];
return Fib[n];
}