算法_笔记1

穷举法

只适用于规模较小的情况

算法效率的度量方法

1.算法采用的策略、方案

2.编译产生的代码质量

3.问题的输入规模

4.机器执行指令的速度

1+...+100

第一种:
for
(i=1;i<=n;i++) //执行了n+1次 { sum=sum+i;      //执行了n次 }
总:2n+1

第二种:
sum=(1+n)*n/2  //执行1次
总:1

两个算法就是n和1的差距

第三种:
for(i=1;i<=n;i++)
{
  for(j=1;j<=n;j++)
  {
  x++;
  sum=sum+x
  }
}

研究算法复杂度,侧重的是研究算法随着输入规模扩大增长量的一个抽象,而不是精确地定位需要执行多少次。因为那样的话,就要考虑编译器的优化问题。

函数的渐进增长

基本操作:赋值,比较等等

 

 

 

总结

判断一个算法效率时:常数可以忽略,最高项系数可以忽略,影响算法的主要是最高项的指数

猜你喜欢

转载自www.cnblogs.com/yinghao_zhu/p/12342393.html