《算法的概念课件.pptx》由会员分享,可在线阅读,更多相关《算法的概念课件.pptx(20页珍藏版)》请在三一办公上搜索。
1、第一章 算法初步,1.1.1 算法的概念,1.1 算法与程序框图,发电子邮件的方法很多,下面是其中的一种操作步骤:,新课导入,假如你的朋友不会发电子邮件,你怎么教会他?,我们做任何事情都是在一定条件下按某种顺序执行的一系列操作。解决数学问题也是如此。例如用加减消元法解二元一次方程组时,就可以按照某一步骤进行操作。,第二步,解得,第三步,-2得 5y=3;,第四步,解得,你能写出解一般的二元一次方程组的步骤吗?,第一步,第二步,解(3)得,第四步,解(4)得,第三步,第五步,得到方程组的解为,这 两个解方程组的算法的适用范围有何不同?,在数学中,算法通常是指按照一定规则解决某一类问题的明确和有限
2、的步骤.现在,算法通常可以编成计算机程序,让计算机执行并解决问题.,2.算法的要求,(1)写出的算法,必须能解决一类问题(例如解任意一个二元一次方程组),并且能重复使用;,(2)算法过程要能一步一步执行,每一步执行的操作,必须确切,不能含混不清,而且在有限步之内完成后能得出结果.,1.算法的定义,探究新知,3.算法的基本特征:,明确性:算法对每一个步骤都有确切的、非二义性的规定,即每一步对于利用算法解决问题的人或计算机来说都是可读的、可执行的,而不需要计算者临时动脑筋.,有效性:算法的每一个步骤都能够通过基本运算有效地进行,并得到确定的结果;对于相同的输入,无论谁执行算法,都能够得到相同的最终
3、结果,有限性:算法应由有限步组成,至少对某些输入,算法应在有限多步内结束,并给出计算结果,信息输出:一个算法至少要有一个有效的信息输出,这就是问题求解的结果.,不唯一性:求解某一个题的解法不一定是唯一的,对于一个问题可以有不同的算法.,数据输入:算法一定要根据输入的初始数据或给定的初值才能正确执行它的每一步骤.,例1.(1)设计一个算法判断7是否为质数.,第一步,用2除7,得到余数1.因为余数不为0,所以2不能整除7.,第二步,用3除7,得到余数1.因为余数不为0,所以3不能整除7.,第三步,用4除7,得到余数3.因为余数不为0,所以4不能整除7.,第四步,用5除7,得到余数2.因为余数不为0
4、,所以5不能整除7.,第五步,用6除7,得到余数1.因为余数不为0,所以6不能整除7.因此,7是质数.,例1.(2)设计一个算法判断35是否为质数.,第一步,用2除35,得到余数1.因为余数不为0,所以2不能整除35.,第二步,用3除35,得到余数2.因为余数不为0,所以3不能整除35.,第三步,用4除35,得到余数3.因为余数不为0,所以4不能整除35.,第四步,用5除35,得到余数0.因为余数为0,所以5能整除35.因此,35不是质数.,任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数做出判定.,分析:回顾这个问题的解题过程.,算法步骤:,第一步:判断n是否等于2.,若n=2
5、,则n是质数;,若n2,则执行第二步.,第二步:依次检验2(n-1)这些整数是不是n的约数,即是不是整除n的数.若有这样的数,则n不是质数;若没有这样的数,则n是质数.,例2:用二分法设计一个求方程 的近似根的算法,对于区间a,b 上连续不断、且f(a)f(b)0的函数y=f(x),通过不断地把函数f(x)的零点所在的区间一分为二,使区间的两个端点逐步逼近零点,进而得到零点或其近似值的方法叫做二分法。,二分法的基本思想:,分析:,第四步,若f(a)f(m)0,则含零点的区间为a,m;否则,含零点的区间为m,b.,第二步,给定区间a,b,满足f(a)f(b)0,第三步,取中间点,第五步,判断f(
6、m)是否等于或者a,b的长度是否小于d,若是,则m是方程的近似解;否则,返回第三步,将新得到的含零点的仍然记为a,b.,第一步,令,给定精确度d.,算法步骤:,当d=0.005时,按照以上算法,可得下面表和图.,于是,开区间(1.4140625,1.41796875)中的实数都是当精确度为0.005时的原方程的近似解.,2.算法的特征是什么?,明确性,有效性,有限性,1.算法的概念,算法通常指可以用来解决的某一类问题的步骤或程序,这些步骤或程序必须是明确的和有效的,而且能够在有限步之内完成的.,课堂小结,经常不断地学习,你就什么都知道。你知道得越多,你就越有力量Study Constantly,And You Will Know Everything.The More You Know,The More Powerful You Will Be,写在最后,谢谢大家荣幸这一路,与你同行ItS An Honor To Walk With You All The Way,演讲人:XXXXXX 时 间:XX年XX月XX日,