义务教育版(2024)五年级全一册第14课 算法效率比一比课堂教学ppt课件
展开
这是一份义务教育版(2024)五年级全一册第14课 算法效率比一比课堂教学ppt课件,共6页。PPT课件主要包含了学习目标,问题情境,学习活动,方法对比,第二种算法,算法效率比较的方法,时间对比,高斯怎么做的呢,运算效率比较等内容,欢迎下载使用。
知道解决同一个问题可以有不同的算法,不同的算法具有不同的效率。
.通过实例比较和算法分析,了解算法执行的关键步骤和执行次数,体会算法存在的效率差异。
第14课 算法效率比一比
这一课以简单的累加运算为例,了解用不同算法解决同一问题的过程,认识其中存在的效率差异。
一堆物体摆放如左图所示,要统计有多少个,你能想到哪些方法? 这些方法有什么不同呢?
三 感受不同算法的运算效率
二 累加运算的效率分析
用不同方法统计物体数量
一、用不同方法统计物体数量
要统计下图所示物体的个数,常用的有两种方法。
第一种算法 观察发现,物体共10层,从上到下,每层分别是1至10个。把物体逐层进行累加,就可以获得物体个数。 1+2+3+4+5+6+7+8+9+10=55
观察图形,发现可以用前面学习过的方法,即利用正反放置的两个梯形组成平行四边形,通过求平行四边形中物体的个数来计算。平行四边形中物体个数 = 每层个数×层数 = (1+10)×10 = 110个梯形中物体个数 = 平行四边形中物体个数÷2 = 110÷2 = 55个
依据上述计算方法,可以总结得到求解一组连续自然数累加之和的公式。 累加的和 =(第一个数+最后一个数)×数的总个数÷2例如,自然数从1到n的累加之和可以表示为: s = ( 1 + n )* n / 2因此,s = ( 1 + n ) * n / 2 = ( 1 +10 ) *10 / 2 = 55
通过比较发现:算法1简单直观,易于理解,算法2所用的步数较少,计算起来更快。
通过求“1+2+3+…+10”的两种不同算法,说明解决同一个问题时,不同的算法会有不同的步骤,也就可能存在不同的效率。
通常,用计算机解决问题时会用以下两种方法来比较算法的效率。 一是比较算法运行所需要的时间。 二是比较算法运行时所需的步数或者占用的资源。
二、累加运算的效率分析
但是,如何衡量计算机在运行程序时所需的时间、执行的步数、占用的内存等,目前没有统一的准则,所以通常选择比较其中的一个方面。
下面主要从时间上来进行分析。
大家听过数学家高斯小时候计算“1+2+3+…+100”的故事吧?高斯使用第二种算法很快给出了答案,比所有其他孩子的速度都快。
我们先来做一个“合理假设”:如果做1 次加法用时1秒、做1次乘法用时10秒、做1次除法用时15秒。
用第一种算法计算: 需要计算约99次加法,这样即使每次加法只用1秒,而且每次中间相加的结果都正确,最终也需要大约99秒的时间才能计算出结果。
用第二种算法来计算: 只需要1次加法(即100 + 1)、1次乘法(即101×100)和1次除法(即除以2),需要约1+10+15 = 26 秒。
单从计算步骤和时间上看,第二种算法似乎比第一种更高效。这就是在“合理假设”前提下,高斯比其他同学算得更快的一种解释。
但是,问题并没有那么简单。因为做乘法和除法时,通常比做加法需要更长的时间。因此,如果以上“合理假设”并不成立。比如,如果做1次乘法或1次除法都需要50秒,那么用第二种算法所需时间就会变成1+50+50=101秒。
通过上述分析可知,从让计算机解决问题的角度看,要准确地比较两个算法究竟哪个更高效,往往比我们预想的要难很多。通常需要从数据量、步骤多少、所需时间等方面综合考虑。 在设计算法用计算机解决问题时也是如此,通常需要经过多次的比较、实验与探索来获得结论。
三、感受不同算法的运算效率
解决同一个问题通常可以用不同的算法,选择不同算法并编程实现后,程序一般会在运算速度、计算精度等方面有不同的表现。下面通过用程序验证上述累加运算的两种算法,体会算法的效率差异以及不同程序实现引起的差异。“累加1.py”程序是用算式直接累加与用公式累加的对比。“累加2.py”程序是用循环结构实现累加与用公式累加的对比。
操作步骤如下。第1步:打开配套资源中的“累加1.py”程序,运行这个程序。第2步:输入要重复执行的次数,观察运行结果。例如,分别输入500、1 000、10 000、100 000等,对比两种算法所用的时间。第3步:打开配套资源中的“累加2.py”程序,运行这个程序。
第4步:输入要重复执行的次数,观察运行结果。例如,同样分别输入500、1 000、10 000、100 000等。第5步:尝试用更多更大的数进行反复实验。这样经由多次数值实验得出的结论会更加趋于稳定,也更加可靠。第6步:依据运行结果,对算法与程序实现的效率进行总结。
1.解决同一个问题时,不同的算法会有不同的步骤,也就存在不同的效率。2.用计算机解决问题时,通常会从执行步骤、执行时间、内存占用等方面比较算法的效率。3.有些人计算起来较困难的问题,可以尝试通过算法利用计算机来解决,充分发挥计算机的计算速度和存储能力优势。
计算圆周率的效率比较。圆周率作为数学中的一个重要常数,其更多位数的精确值求解一直是数学家们所追求的。我国南北朝时期的数学家祖冲之,经过刻苦钻研和反复演算,推算出圆周率π的值在3.1415926和3.1415927之间,这一结果在当时已经非常精确。祖冲之通过其卓越的数学才能和不懈的努力,为数学的发展作出了重要贡献。配套资源中有两个计算圆周率的程序,打开这两个程序并运行,对比计算圆周率的效率。
提示:两个程序分别采用了两种不同的算法。算法117世纪,有学者找到了一种计算圆周率的方法。根据这个方法,只要计算足够多的数据项,就可以获得圆周率的近似值。算法2很多年后,又有学者提出了另一种计算圆周率的方法。同样,只要计算足够多的数据项,也可以得到圆周率的近似值。
提示:运行第一个程序时需要的时间稍长,计算出来的圆周率精确到了3.1415左右。运行第二个程序时几乎可以立刻得到计算结果,计算出来的圆周率的精确位数也更多。因此,依据算法2编写的程序,所需计算时间更短、计算结果更精确,效率更高。实际上,第二个程序中的公式每多循环一次,通常可以多得到一位精确数字。
相关课件
这是一份义务教育版(2024)四年级全一册第四单元 数据管理与安全第17课 查找筛选讲效率说课课件ppt,文件包含第3章对圆的进一步认识章末重点题型归纳原卷版docx、第3章对圆的进一步认识章末重点题型归纳解析版docx等2份试卷配套教学资源,其中试卷共111页, 欢迎下载使用。
这是一份信息技术五年级全一册第28课 认识决策树算法说课课件ppt,共27页。PPT课件主要包含了学习目标,问题情境,学习活动,初步体验决策过程,生活情境,情境分析,认识决策树,医疗诊断,自助服务机器人,预测公交车到站时间等内容,欢迎下载使用。
这是一份小学义务教育版(2024)第七单元 了解更多的算法第26课 寻找最短的路径授课课件ppt,共12页。PPT课件主要包含了学习目标,问题情境,学习活动,任务分析,分析思考,方法突破,遍历所有路径,枚举法的局限,问题分解,局部问题解决等内容,欢迎下载使用。