2017年计算机二级公共基础辅导讲义:算法

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/09 13:11:02 计算机等级考试
2017年计算机二级公共基础辅导讲义:算法
2017年计算机二级公共基础辅导讲义:算法计算机等级考试

  1.1 算法
  1、算法是指解题方案的准确而完整的描述。换句话说,算法是对特定问题求解步骤的一种描述。
  *:算法不等于程序,也不等于计算方法。程序的编制不可能优于算法的设计(注释1)。
  2、算法的基本特征
  (1)可行性。针对实际问题而设计的算法,执行后能够得到满意的结果。
  (2)确定性。每一条指令的含义明确,无二义性。并且在任何条件下,算法只有唯一的一条执行路径,即相同的输入只能得出相同的输出。
  (3)有穷性。算法必须在有限的时间内完成。有两重含义,一是算法中的操作步骤为有限个,二是每个步骤都能在有限时间内完成。
  (4)拥有足够的情报。算法中各种运算总是要施加到各个运算对象上,而这些运算对象又可能具有某种初始状态,这就是算法执行的起点或依据。因此,一个算法执行的结果总是与输入的初始数据有关,不同的输入将会有不同的结果输出。当输入不够或输入错误时,算法将无法执行或执行有错。一般说来,当算法拥有足够的情报时,此算法才是有效的;而当提供的情报不够时,算法可能无效。
  *:综上所述,所谓算法,是一组严谨地定义运算顺序的规则,并且每一个规则都是有效的,且是明确的,此顺序将在有限的次数下终止。
  3、算法复杂度主要包括时间复杂度和空间复杂度。
  (1)算法时间复杂度是指执行算法所需要的计算工作量,可以用执行算法的过程中所需基本运算的执行次数来度量。
  (2)算法空间复杂度是指执行这个算法所需要的内存空间。
  例:1) 算法的复杂度主要包括______复杂度和空间复杂度。
  答:时间
  (注释1)这是因为:在编写程序时要受到计算机系统运行环境的限制,程序通常还要考虑很多与方法和分析无关的细节问题。计算机等级考试