1. 算法评价

好的算法应该具有:

  1. 正确性
  2. 可读性
  3. 健壮性(对于非法数据进行处理)
    4. 效率与存储量

一、算法效率的度量

  1. 语句频度:该条语句可能重复执行的次数
  2. T(n):所有语句的频度之和,其中n为问题的规模

图片

  1. 时间复杂度T(n)=O((f(n)),其中O表示T(n)与f(n)在n->正无穷时为同阶无穷大.

二、时间复杂度

图片

图片

上图这个例子:

  • int sum = 0 的语句频度为1
  • 第一个循环的语句频度为n
  • 第二个循环的语句频度为n^2

∴ T(n) = n^2 + n + 1

根据加法规则:O(n^2)

图片

三、空间复杂度

空间复杂度算法消耗的存储空间,记s(n)=O(g(n))

posted @ 2020-06-21 19:40  衍射  阅读(188)  评论(0编辑  收藏  举报