算法导论第一章
第一章:算法在计算中的作用
1.1算法
非形式地说,算法就是任何良定义的计算过程,该过程取某个值或值的集合作为输入并产生某个值或值的集合作为输出。这样,算法就是把输入转换成输出的计算步骤的一个序列。
若对每个输入实例算法都以正确的输出停机,则称该算法是正确的,并称正确的算法解决了给定的计算问题。
算法问题所共有的两个特征:1.存在许多候选解,但绝大多数候选解都没有解决手头的问题。寻找一个真正的解或一个最好的解可能是一个很大的挑战。2.存在实际应用。
算法解决的每个问题并不都有一个容易识别的候选解集。
数据结构
数据结构是一种存储和组织数据的方式,旨在便于访问和修改。
1.2作为一种技术的算法
效率
例子:插入排序:排序n个项,算法所花时间大致等于c1n2,其中c1是一个不依赖于n的常数。归并排序:排序n个项,该算法所花时间大致等于c2nlgn,其中lgn代表log2n且c2是另一个不依赖于n的常数。
算法是当代计算机中使用的大多数技术的核心。