笔记:计算机公共基础知识学习内容——算法

程 序 = 数据结构 + 算 法 ——沃思(Nikiklaus Wirth)

- 算 法

算法(Algorithm):解题方案的准确而完事的描述。(对操作的描述,即操作步骤。)

- 基本特征

  1. 有穷性(Finiteness)
    一个算法应包含有限的操作步骤而不能是无限的。
    eg:算法不可以的无限循环的。设x=0,循环x=x+1,结束条件是 x<0。
  2. 确定性(Definiteness)
    算法中的操作都应是确定的,而不是含糊,模棱两可的。
    每个步骤要有每个步骤的含义,要是十分明确无误的。
  3. 可行性(Effectiveness)
    一个算法要可以有效地执行,即算法描述的每一步都可通过已实现的基本运算执行有限次来完成。
  4. 输入(Input)
    在执行算法时需要从外界(用户)取得必要的信息。
  5. 输出 (Output)
    算法的目地是为了求解,“解”就是输出。一个算法可以有一个或多个输出。没有输出的算法是没有意义的。

- 复杂度

设计一个算法时,要考虑到算法的 执行速度慢快(时间复杂度大小)存储空间大小(空间复杂度大小)

  1. 时间复杂度
    指执行算法所需要的计算工作量。
    …与所用的计算机、程序设计语言无关,而且与算法实现过程中的细节无关。算法的工作量用算法在执行过程中所需要的基本运算作为基本运算。
  2. 空间复杂度
    指执行算法所需要的内存空间。
    …一个算法所占用的存储空间包括 算法程序所占用的空间、输入的初始数据占用的存储空间、算法执行过程中所需要的额外空间(算法程序执行过程中的工作单元、某种数据结构所需要的附加存储空间)。

你可能感兴趣的:(全国计算机二级考试,笔记,算法)