2.3算法的特性 一个算法应该具有以下特点: 1.有穷性 一个算法应包含有限的操作步骤,而不能是无限的。 事实上,“有穷性”往往指“在合理的范围之内”。 究竞什么算“合理限度”,并无严格标准,由人 们的常识和需要而定。 2.确定性 算法中的每一个步骤都应当是确定的,而不应当是 含糊的、模棱两可的
2.3 算法的特性 一个算法应该具有以下特点: 1.有穷性 一个算法应包含有限的操作步骤,而不能是无限的。 事实上,“有穷性”往往指“在合理的范围之内”。 究竟什么算“合理限度”,并无严格标准,由人 们的常识和需要而定。 2.确定性 算法中的每一个步骤都应当是确定的,而不应当是 含糊的、模棱两可的
3.有零个或多个输入 所谓输入是指在执行算法时需要从外界取得必要的 信息。一个算法也可以没有输入。 4.有一个或多个输出 算法的目的是为了求解,“解”就是输出。没有输 出的算法是没有意义的。 5.有效性 算法中的每一个步骤都应当能有效地执行,并得到 确定的结果
3.有零个或多个输入 所谓输入是指在执行算法时需要从外界取得必要的 信息。一个算法也可以没有输入。 4. 有一个或多个输出 算法的目的是为了求解,“解” 就是输出。没有输 出的算法是没有意义的。 5. 有效性 算法中的每一个步骤都应当能有效地执行,并得到 确定的结果
2.4怎样表示一个算法 为了表示一个算法,可以用不同的方法。常用的有 自然语言、传统流程图、结构化流程图、伪代码、 PAD图等。 2.4.1用自然语言表示算法 在2.2节中介绍的算法是用自然语言表示的。用自然 语言表示通俗易懂,但文字冗长,容易出现“歧 义性”。自然语言表示的含义往往不太严格,要 根据上下文才能判断其正确含义。此外,用自然 语言描述包含分支和循环的算法,不很方便(如例 2.5的算法)。因此,除了很简单的问题以外,一般 不用自然语言描述算法
2.4 怎样表示一个算法 为了表示一个算法,可以用不同的方法。常用的有 自然语言、传统流程图、结构化流程图、伪代码、 PAD图等。 2.4.1 用自然语言表示算法 在2.2节中介绍的算法是用自然语言表示的。用自然 语言表示通俗易懂,但文字冗长, 容易出现“歧 义性”。自然语言表示的含义往往不太严格,要 根据上下文才能判断其正确含义。此外,用自然 语言描述包含分支和循环的算法,不很方便(如例 2.5的算法)。因此,除了很简单的问题以外,一般 不用自然语言描述算法