已知斐波那契数列第1、2项为1,后续每项均为前两项之和,现有两种C++实现代码如下:
int fiboA(int N)
{
if (N == 1 || N == 2)
return 1;
return fiboA(N - 1) + fiboA(N - 2);
}
int fiboB(int N)
{
if (N == 1 || N == 2)
return 1;
int last2 = 1, last1 = 1;
int nowVal = 0;
for (int i = 2; i < N; i++)
{
nowVal = last1 + last2;
last2 = last1;
last1 = nowVal;
}
return nowVal;
}