1.内容:
用递归,迭代和矩阵法求斐波那契数列,并对比运行时间。
2.代码:
#include<stdio.h>
#include<time.h>//clock函数头文件
unsigne dlong long a[100000000];//用于存迭代法的斐波那契数列
double diedai(int n)//迭代法求斐文那契数列 (从第一个数开始求,直到求出要的数为止)
{
int i;
a[1]=0;//第一个数
a[2]=1;//第二个数
clock_t beg,end;//起始时间和结束时间
double time;
beg=clock();//迭代法起始时间
for(i=3;i<=n;i++)//循环从第三个数开始,直到求出第n个斐波那契数
{
a[i]=a[i-1]+a[i-2];//根据前两个数求出第i个(后一个)斐波那契数
}
printf("迭代法计算第%d个数是%lld\n",n,a[n]);
end=clock();//迭代法结束时间
time=(double)(end- beg)/CLOCKS_PER_SEC;//迭代法运行时间
return time;
}
unsigned long long digui(int n)//递归算法计算
{
<