【算法导论】第1章:算法在计算中的作用

1.1     算法

  • 算法(algorithm):任何良定义的计算过程,该过程取某个值或值的集合作为输入并产生某个值或值的集合作为输出。这样算法就是把输入转换成输出的计算步骤的一个序列。算法也可以看成求解良说明的计算问题的工具。
  • 问题实例:由计算该问题解所必需的(满足问题陈述中强加的各种约束的)输入组成。
  • 若对于每个输入实例,算法都以正确的输出停机,则称该算法是正确的,并称正确的算法解决了给定的计算问题。不正确的算法对某些输入实例可能根本不停机,也有可能以不正确的回答停机。与人们的期望相反,不正确的算法只要其错误率可控有时可能是有用的。

1.2    作为一种技术的算法​​​​​​​

  • 计算机也许是快的,但他们不是无限快。存储器也许是廉价的,但不是免费的。所以计算时间是一种有限资源,存储器中的空间也一样。我们应该明智地使用这些资源,在时间或空间方面有效的算法将帮助我们这样使用资源。
  • 效率:为求解相同问题而设计的不同算法在效率方面常常具有显著的差别。这些差别可能比由于硬件和软件造成的差别重要得多。
  • 我们应该像计算机硬件一样把算法看成是一种技术。整个系统的性能不但依赖于选择快速的硬件而且还依赖于选择有效的算法。

你可能感兴趣的:(算法导论)