考点一 算法设计
算法设计应注意
(1)与解决问题的一般方法有联系,从中提炼出算法;
(2)将解决问题的过程分为若干个可执行步骤;
(3)引入有关的参数或变量对算法步骤加以表达;
(4)用最简练的语言将各个步骤表达出来;
(5)算法的执行要在有限步内完成.
【典例1】 已知平面直角坐标系中两点A(-1,0),B(3,2),写出求线段AB的垂直平分线方程的一个算法.
[解] 第一步,计算x0=-1+32=1,y0=0+22=1,得AB的中点N(1,1).
第二步,计算k1=2-03-?-1?=12,得AB斜率.
第三步,计算k=-1k1=-2,得AB垂直平分线的斜率.
第四步,由点斜式得直线AB的垂直平分线的方程,并输出.
算法的设计与一般意义上的解决问题并不相同,它是对一类问题一般解法的抽象与概括.我们将一般问题划分为数值型问题和非数值型问题两类;对于数值型问题,我们可以采用数值分析的方法进行处理,数值分析中许多现成的固定算法,我们可以直接使用,当然我们也可以根据问题的实际情况设计算法;对于非数值型问题,可以根据过程模型分析算法并进行处理,也可以选择一些成熟的办法进行处理,如排序、递推等.
[针对训练]