题目一:输入n,求出斐波那契数列的第n项的。
题目二:一只青蛙,一次可以跳上一级台阶,也可以跳上2级台阶,求青蛙跳上n级台阶有多少种跳法。
总数:f(n) = f(n-1) + f(n-2) 。
根据f(0)和f(1)求出f(2),再根据f(1)和f(2)算出f(3),以此类推就可以算出第n项了。时间复杂度O(n)。
int Fibio(int n)
{
int ar[2] = {0,1};
if(n < 2)
return ar[n];
int X = 0;
int Y = 1;
int fib;
for(int i=2;i<=n;i++)
{
fib = X + Y;
X = Y;
Y = fib;
}
return fib;
}