第2章 算法
算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作。
算法定义中,提到了指令,指令能被人或机器等计算装置执行。它可以是计算机指令,也可以是我们平时的语言文字。
为了解决某个或某类问题,需要把指令表示成一定的操作序列,操作序列包括一组操作,每一个操作都完成特定的功能,这就是算法了。
2.1 算法的特性
算法具有五个基本特性:输入、输出、有穷性、确定性和可行性。
2.1.1 输入输出
算法具有零个或多个输入。对于绝大多数算法来说,输入参数都是必要的,但对于个别情况,如打印“hello world!”这样的代码,不需要任何输入参数,因此算法的输入可以是零个。
算法至少有一个或多个输出。算法是一定需要输出的,输出的形式可以是打印输出,也可以是返回一个或多个值等。
2.1.2 有穷性
有穷性:指算法在执行有限的步骤之后,自动结束而不会出现无限循环,并且每一个步骤在可接受的时间内完成。
现实中经常会写出死循环的代码,这就是不满足有穷性。
2.1.3 确定性
确定性:算法的每一步骤都具有确定的含义,不会出现二义性。
算法在一定条件下,只有一条执行路径,相同的输入只能有唯一的输出结果。算法的每个步骤被精确定义而无歧义。
2.1.4 可行性
原文:https://www.cnblogs.com/veggiegfei/p/14707690.html