[工学]ch2算法分析2.pptVIP

  • 2
  • 0
  • 约7.6千字
  • 约 39页
  • 2018-03-28 发布于浙江
  • 举报
[工学]ch2算法分析2

王 璐 dqx_wl@163.com 中原工学院计算机学院 2010-9 ch2 算法分析 算法分析的目的 通过对算法分析,在把算法变成程序实际运行前,就知道为完成一项任务所设计的算法的好坏,从而运行好算法,改进差算法,避免无益的人力和物力浪费。 算法分析的基本原则 正确性 方法的正确性证明 软件测试 工作量——时间复杂性分析 分析目的:改进算法/程序运行时间上限/实时系统的要求 占用空间——空间复杂性分析 存储中间结果或操作单元所占用空间——额外空间 简单性 简单的算法效率不一定高,需要折中. 最优性 寻找求解某类问题中效率最高的算法 算法复杂性分析 算法复杂性是算法运行所需要的计算机资源的量,需要时间资源的量称为时间复杂性,需要的空间资源的量称为空间复杂性。 这个量应该只依赖于算法要解的问题的规模、算法的输入和算法本身的函数。如果分别用N、I和A表示算法要解问题的规模、算法的输入和算法本身,而且用C表示复杂性,那么,应该有C=F(N,I,A)。 如何进行算法分析? 事前分析:就算法本身,通过对其执行性能的理论分析,得出关于算法特性——时间和空间的一个特征函数(Ο、Ω)——与计算机软硬件没有直接关系。 事后测试:将算法编制成程序后放到计算机上运行,收集其执行时间和空间占用等统计资料,进行分析判断——直接与物理实现有关。 1)事前分析 目的:试图得出关于算法执行特性的一种形式

文档评论(0)

1亿VIP精品文档

相关文档