算法分析的类型

为了分析给定的算法,我们需要找到什么输入算法花费时间较短,什么输入算法的花费时间较长。我们已经知道算法的时间花费可以以表达式的形式给出来,我们给出多个表达式:一个对应花费时间最少的情况,其他的分别对应时间花费更多的情况,一般的:

最坏的情况:

  • 界定会让算法表现最差(时间最长)的输入数据。
  • 输入这些数据。

最好的情况:

  • 界定会让算法表现最好(时间最短)的输入数据。
  • 输入这些数据。

一般(平均)情况:

  • 对算法的运行时间进行预测。
  • 假定输入是随机的。

【下边界<=平均时间<=上边界】

对于给定算法,我们能给出最好的情况,最差的情况和平均情况的时间花费表达式。

例如:

f(n) = n2 + 500, for worst case

f(n) = n + 100n + 500, for best case

类似的我们也能定义平均情况。

Copyright © 2015 programnote
原文地址:https://www.cnblogs.com/programnote/p/4689859.html