算法:算法是为了解决某些问题而规定的一个有限长的操作序列。
一个算法必须满足以下五个重要特征:
有穷性:
对于任意一组合法输入值,在执行又穷步骤之后一定能结束,即:算法中的每个步骤都能在有限时间内完成。
确定性:
在每种情况下所应执行的操作,在算法中都有确切的规定,使算法的执行者或阅读者都能明确其含义及如何执行。并且在任何条件下,算法都只有一条执行路径。
可行性:
算法中的所有操作都必须足够基本,都可以通过已经实现的基本操作运算有限次实现之。
有输入:
作为算法加工对象的量值,通常体现在算法当中的一组变量。有些输入量需要在算法执行的过程中输入,而有的算法表面上可以没有输入,实际上已被嵌入算法之中。
有输出:
它是一组与“输入”有确定关系的量值,是算法进行信息加工后得到的结果,这种确定关系即为算法功能。