衡量算法的方法

1. 算法的内容及特性

  • 输入:待处理的信息(问题)
  • 输出:经处理的信息(答案)
  • 正确性:的确可以解决指定的问题
  • 确定性:任一算法都可以描述为一个由基本操作组成的序列
  • 可行性:每一操作都可实现
  • 有穷性:在常数时间内完成
    程序 = 算法 + 数据结构

2. 衡量算法的方法

衡量一个算法的好坏,可以从算法的正确性、健壮性、可读性和效率上进行分析:

  • 正确性包括程序的语法、编译以及程序能够处理正确的输入输出;
  • 健壮性即程序能够对不合法的输出进行适当的处理,而不至非正常退出;
  • 可读性则为代码的结构化和命名等编程规范;
  • 最重要的一点是算法的效率,效率包括两方面,一是时间,一是空间;

3. 算法复杂度分析的主要方法(大O表示法)

(1)迭代:级数求和
(2)递归:递归跟踪 + 递归方程式
(3)猜测 + 验证

笔记出处:《清华大学-邓俊辉MOOC数据结构与算法全套》

你可能感兴趣的:(衡量算法的方法)