C语言基础学习(8)
10,算法的效率的度量方法。
用程序去统计程序的执行时间不靠谱。
eg:计算100的累加,用不同的算法来表述
1+2+3+...+100+5050;
#include<stdio.h>
int main()
{int sum=0;//执行1次
for(int i=1;i<=100;i++){//n+1次
sum=sum+i;//n次
}
printf("%d",sum);
}
总共执行2n+2
int sum=0;
sum=(1+100)*100/2;
#include<stdio.h>
int main()
{
int sum = 0;//执行1次
sum = (1 + 100)* 100 / 2;//执行1次
printf("%d", sum);
}
总共执行两次
随着n的变化,执行次数不一样
执行次数的表达式他的常数项可以忽略。
应该关注最高项的阶数。