10.3算法的分类、特性和评价方法10.3.1算法的分类10.3.2算法的特性10.3.3算法的评价方法
10.3 算法的分类、特性和评价方法 10.3.1算法的分类 10.3.2算法的特性 10.3.3算法的评价方法
10.3.1算法的分类,算法的分类方法有许多种,按照算法所涉及的对象,一般可以把算法分成两大类:数值运算算法和数值运算算法数值运算算法的目的是对数值进行求解,其特点是少量的输入、输出,复杂的运算,非数值运算算法的目的是对数据进行管理,其特点是大量的输入、输出,简单的算术运算和大量的逻辑运算
10.3.1算法的分类 • 算法的分类方法有许多种,按照算法所涉及的对象,一般可 以把算法分成两大类:数值运算算法和非数值运算算法。 • 数值运算算法的目的是对数值进行求解,其特点是少量的输 入、输出,复杂的运算。 • 非数值运算算法的目的是对数据进行管理,其特点是大量的 输入、输出,简单的算术运算和大量的逻辑运算
10.3.2算法的特性一般地,算法应该具有以下特性。(1)确定性。一个算法中的每一个步骤必须是精确的定义、无二义性,不会使编程者对算法中的描述产生不同的理解。(2)有穷性。一个算法必须在执行有穷步后结束,每一步必须在有穷的时间内完成。(3)可行性。算法描述的步骤在计算机上是可行的,能在一个合理的范围内有效地执行,并应能得到一个明确的结果。(4)输入:一般有零个或多个输入值(5)输出:一个算法的执行过程中或结束后要有输出结果,或者产生相应的动作指令
10.3.2算法的特性 • 一般地,算法应该具有以下特性。 (1)确定性。一个算法中的每一个步骤必须是精确的定义、无二义性,不会使编 程者对算法中的描述产生不同的理解。 (2)有穷性。一个算法必须在执行有穷步后结束,每一步必须在有穷的时间内完 成。 (3)可行性。算法描述的步骤在计算机上是可行的,能在一个合理的范围内有效 地执行,并应能得到一个明确的结果。 (4)输入:一般有零个或多个输入值。 (5)输出:一个算法的执行过程中或结束后要有输出结果,或者产生相应的动作 指令
10.3.3算法的评价方法1.算法的正确性2.可读性3.健壮性4.高效率和低存储量
10.3.3算法的评价方法 1.算法的正确性 2.可读性 3.健壮性 4.高效率和低存储量
10.4算法的三种结构10.4.1顺序结构10.4.2分支结构10.4.3循环结构
10.4 算法的三种结构 10.4.1顺序结构 10.4.2分支结构 10.4.3循环结构