算法效率的度量

来源:互联网 发布:夜未央乐未殇 知乎 编辑:程序博客网 时间:2024/05/16 00:32

事后统计
主要通过设计好的测试程序和数据,利用计算机的计时器对不同算法的编程的程序的运行时间进行比较,从而确定算法效率的高低。
统计方法:比较不同算法对同一组输入数据的运行处理时间。
缺陷:为了获得不同算法的运行时间必须编写相应程序
运行时间严重依赖硬件以及运行时的环境因素
算法的测试数据的选取相当困难
总结:事后统计法虽然直观,但是实施困难且缺陷多

之前分析估算
在计算机程序编译前,依据统计方法对算法进行估算。
统计方法:依据统计的方法对算法效率进行估算。
影响算法效率的主要原因:
算法采用的策略和方法
问题的输入规模
编译器所产生的代码
计算机执行速度
算法推倒得理论基础:
算法最终编译称具体的计算机指令
每一个指令,在具体的计算机上运行速度固定
通过具体的步骤,就可以推导出算法的复杂度

判断算法的效率
只需要关注操作数量的最高次项,其它次要项和常数项可以忽略。
没有特殊说明,算法的时间复杂度都是指最坏时间复杂度
只有常数项记作 1
操作数量的估算可以作为时间复杂度的估算

0 0
原创粉丝点击