1.算法的概念
一般而言,对一类问题的机械的、统一的求解方法称为算法.
广义地说,为解决某一问题而采取的方法和步骤,我们都可以称之为算法,不要认为只有“计算”才有算法.例如:广播操图解是广播操的算法,菜谱是做菜的算法,歌谱是一首歌曲的算法,空调说明书是空调使用的算法.
我们过去学习的许多数学公式都是算法,加、减、乘、除运算法则以及多项式的运算法则也是算法.
2.算法的特征
(1)有限性:一个算法的步骤序列是有限的,必须在有限操作之后停止,不能是无限的.
(2)确定性:算法中的每一步应该是确定的并且能有效地执行且得到确定的结果,而不应当模棱两可.
(3)顺序性与正确性:算法从初始步骤开始,分为若干明确的步骤,每一个步骤只能有一个确定的后续步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,并且每一步都准确无误,才能完成问题.
(4)不唯一性:求解某一问题的算法不一定是唯一的,对于同一个问题可以有不同的算法.
(5)普遍性:很多具体的问题,都可以设计合理的算法去解决,如心算、计算器计算都要经过有限、事先设计好的步骤加以解决.
3.算法的设计要求