剑指offer:面试题9,斐波那契数列

递归算法

#include
#include 

int fibonacci(int n)
{
	if (n<=0)
	{
		return 0;
	}
	if (n==1)
	{
		return 1;
	}
	return fibonacci(n-1)+fibonacci(n-2);
}



int main()
{
	int n=0;
	int sum=0;
	scanf("%d",&n);
	sum=fibonacc(n);
	printf("%d\n",sum);
	system("pause");
	return 0;
}


递归算法算比较大的数列时重复调用次数太多效率极低


迭代算法

int fibonacc(int n)
{
	int i=0;
	int a=1;
	int b=1;
	int c=1;
	while ((n>2)&&(i




你可能感兴趣的:(C语言)