#include<stdio.h>
#define N 10
//遞歸
int RecursiveFib(int n)
{
if (n <= 1)
return n;
return RecursiveFib(n - 1) + RecursiveFib(n - 2);
}
//非遞歸
int CycleFib(int n)
{
int ret = 0;
int i = 0, n1 = 0, n2 = 1;
if (n <= 2)
return 1;
if (n > 2)
{
for (i = 2; i <= n; i++)
{
ret = n1 + n2;
n1 = n2;
n2 = ret;
}
return ret;
}
}
int main()
{
printf("RecursiveFib is:%d\n", RecursiveFib(N));
printf("CycleFib is:%d\n", CycleFib(N));
system("pause");
return 0;
}
斐波那契數列的遞歸及非遞歸
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.