1、栈
(1)栈就像一个开口得箱子,先入后出,后入先出。
(2)大小为:1M.
(3)栈顶,地址低;栈底,地址高;
(4)递归时间复杂度太大,容易超出栈得大小
2、计时函数clock
调用计时函数时,先调用头文件
#include<time.h>
clock_t c1=clock();//以毫秒计算,数据类型为长整型。
printf("%d\n",Fibon(3));//2
clock_t c2=clock();
printf("%d\n",c2-c1);//求时间差
3、时间复杂度
for(int i=1;i<=n;i++)
for(int j=1;i<=n;j++)
{
c[i][j]=0;
}
每条语句为执行一次,总执行次数为:(1+n+n)+[n*(1+n+n)]+(n*n)=3*n^2+3*n+1
(1)只保留阶数最高的项,因为 阶数最高的项对结果影响最大
(2)去掉系数。
所以时间复杂度为o(n^2),其中o(1)为常数。
bool Fun(int n)//功能判断是否为素数,时间复杂度为o(n^0.5)
{
int i=2;
while((n%i)!=0 && i*1.0<sqrtl(n))i++;
if(i*1.0>sqrtl(n))
return true;
else
return false;
}