高一数学 算法的概念课件 新人教A版必修3

上传人:无*** 文档编号:51782415 上传时间:2022-01-31 格式:PPT 页数:18 大小:342KB
返回 下载 相关 举报
高一数学 算法的概念课件 新人教A版必修3_第1页
第1页 / 共18页
高一数学 算法的概念课件 新人教A版必修3_第2页
第2页 / 共18页
高一数学 算法的概念课件 新人教A版必修3_第3页
第3页 / 共18页
点击查看更多>>
资源描述
1 什么是算法 算法(algorithm)一词源于算术(algorism),算术方法的原义是一个由已知推求未知的运算过程。后来,人们把它推广到一般,指算法是在有限步骤内求解某一问题所使用的一组定义明确的规则,甚至把把进行某一工作的方法和步骤也称为算法。 例如,人们在计算过程中,先乘除,后加减,从内到外去括号等规则,都是按部就班必须遵守的算法。人类最早关于算法的记录存在于在两河流域发现的公元前两三千年的泥板书上,其中的一个典型例子就是计算利息何时能够够等于本金。算法早期发展中值得一提的另一个成果应归功于古希腊的欧几里得,他提出的计算最大公约数的辗转相除法(又称欧几里得算法)至今仍在使用。欧几里得是古代最有名望的学者之一,古希腊数学家,几何学的鼻祖。公元前300年左右,他所著几何原本13卷,是世界上最早公理化的数学著作。在几何原本中他充分总结了前人的生产经验和研究成果,从公理和公设出发,运用演绎法,经过逻辑推理和数学运算,创立了著名的欧几里得(简称欧氏几何)。 在几何原本中,欧几里得还阐述了关于求两个整数的最大公约数的过程,这就是著名的欧几里得算法辗转相除法,其具体过程如下:设给定的两个正整数为m和n,求它们的最大公约数的步骤为:(1)以m除以n,令所得的余数为r(r必小于n);(2)若r0,则输出结果n,算法结束;否则,继续步骤(3)(3)令m=n,n=r,并返回步骤(1)继续进行。中国古代数学研究中也有许多有关算法的成果。用我国传统的开方术求高次方程的近似根,是算法上的一大成就。此外,在社会上得到广泛使用的珠算口诀就可以看做是典型的算法,它把复杂的计算(例如除法)描述为一系列按口诀执行的简单的算珠拨动操作。中国古代数学以算法为主要特征,其中最具代表性的就是九章算术。九章算术是战国、秦、汉时期数学发展的总结,就其数学成就来说,堪称是世界数学名著。其内容按类分章,以数学问题的形式出现,包括分数四则运算、开平方与开立方(包括二次方程数值解法)、盈不足术、各种面积和体积公式、线性方程组解法、正负数运算的加减法则、勾股形解法(特别是勾股定理和求勾股数的方法)等。其中方程组解法和正负数加减法则在世界数学发展上是遥遥领先的。就其特点来说,它形成了一个以筹算为中心,与古希腊数学完全不同的独立体系。 在1114世纪约300年期间著名的数学家的著作中,如贾宪的黄帝九章算法细草,刘益的议古根源,秦九昭的数书九章,李治的测圆海镜和益古演段,杨辉的详解九章算法、日用算法和 杨辉算法中,算法的特点得到了进一步的强化和发展(其中包括发展了一套求高次方程近似根的方法。1)能行性)能行性(effectiveness) 算法的能行性包括两个方面:一是算法中的每算法的能行性包括两个方面:一是算法中的每一个步骤必须是能实现的。例如,在算法中,不允许一个步骤必须是能实现的。例如,在算法中,不允许出现分母为零的情况;在实数范围内不能求一个负数出现分母为零的情况;在实数范围内不能求一个负数的平方根等。二是算法执行的结果要能达到预期的目的平方根等。二是算法执行的结果要能达到预期的目的。通常,针对实际问题设计的算法,人们总是希望的。通常,针对实际问题设计的算法,人们总是希望能够得到满意的结果。能够得到满意的结果。 例如,某计算工具规定:大于例如,某计算工具规定:大于100的数认为是比的数认为是比1大很多,而小于大很多,而小于10的数不能认为是比的数不能认为是比1大很多;大很多;且在正常情况下出现的数或是大于且在正常情况下出现的数或是大于100,或是小于或是小于10.但指令但指令“输入一个输入一个X,若,若x比比1大很多,则输大很多,则输出数字出数字1,否则输出数字,否则输出数字0”是不确定的。这是因是不确定的。这是因为,在正常的输入情况下,这一指令的执行可以为,在正常的输入情况下,这一指令的执行可以得到正确的结果,但在异常情况下(输入的得到正确的结果,但在异常情况下(输入的x在在10与与100之间),这一指令执行的结果就不确定之间),这一指令执行的结果就不确定了了 1210 1210 12101210 1210 1210 算法的有穷性还应包括合理的执行时间的含义。如果一个算法的执行时间是有穷的,但却需要执行千万年显然这就失去了算法的实用价值。例如,克莱姆(Cramer )规则是求解线性代数方程组的一种数学方法,但不能以此为算法,这是因为,虽然总可以根据克莱姆规则设计出一个计算过程用于计算所有可能出现的行列式,但这样的计算过程所需的时间实际上是不能容忍的。还例如,从理论上讲,总可以写出一个正确的弈棋程序,还例如,从理论上讲,总可以写出一个正确的弈棋程序,而且这也并不是一件很困难的工作。由于在一个棋盘上安而且这也并不是一件很困难的工作。由于在一个棋盘上安排棋子的方式总是有限的,而且,根据一定的规则在有排棋子的方式总是有限的,而且,根据一定的规则在有限次移动棋子之后比赛一定结束。因此弈棋程序可以考限次移动棋子之后比赛一定结束。因此弈棋程序可以考虑计算机每一次可能的移动,它的对手每一次可能的应答,虑计算机每一次可能的移动,它的对手每一次可能的应答,以及计算机对这些移动的可能应答等等,直到每个可能的以及计算机对这些移动的可能应答等等,直到每个可能的移动停止下来为止。此外,由于计算机可以知道每次移动移动停止下来为止。此外,由于计算机可以知道每次移动的结果,因此总可以选择一种最好的移动方式。但即使如的结果,因此总可以选择一种最好的移动方式。但即使如此,这种弈棋程序还是不可能执行,因为所有这些可能移此,这种弈棋程序还是不可能执行,因为所有这些可能移动的次数太多,所要花费的时间不能容忍。由上述两个例动的次数太多,所要花费的时间不能容忍。由上述两个例子可以看出,虽然许多计算过程是有限的但仍有可能无子可以看出,虽然许多计算过程是有限的但仍有可能无实用价值。实用价值。 (4)算法必须拥有足够的情报)算法必须拥有足够的情报 一个算法是否有效,还取决于为算法的执行所一个算法是否有效,还取决于为算法的执行所提供的情报是否足够。例如,对于指令提供的情报是否足够。例如,对于指令“如果小明是如果小明是学生,则输出字母学生,则输出字母Y,否则输出,否则输出N”。当算法执行过程。当算法执行过程中提供了小明一定不是学生的某种信息时,执行的结中提供了小明一定不是学生的某种信息时,执行的结果将输出字母果将输出字母N;当提供的只是部分学生的名单,且小;当提供的只是部分学生的名单,且小明恰在此名单之中,则执行的结果将输出字母明恰在此名单之中,则执行的结果将输出字母Y。但如。但如果在提供的部分学生的名单中找不到小明的名字则果在提供的部分学生的名单中找不到小明的名字则在执行该指令时无法确定小明是否是学生。在执行该指令时无法确定小明是否是学生。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!