




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
算法的概念连云港市赣榆实验中学赵统顺华罗庚泡茶问题:烧水泡茶,它需要做4项工作,即洗好水壶(2分钟),洗好茶杯(3分钟),准备茶叶(1分钟),烧开水(10分钟)思考:你会怎么做?方法一:第一步:洗好水壶;第二步:烧水;第三步:水烧开后,洗刷茶具,拿茶叶;第四步:沏茶。方法二:第一步:洗好水壶;第二步:烧水;第三步:烧水过程中,洗刷茶具,拿茶叶;第四步:水烧开后沏茶。算法的定义:用计算机编写程序解决问题的时候,首先应确定解决问题的思路和方法,并写出正确的求解步骤,这就是所谓的算法。简单的说,算法就是解决问题的方法和步骤。例题:查找数字:编写一个在包含16个数的有序数列中(序号从1到16)查找数字的程序:当输入某个数字时,程序立刻显示出该数字所在的序号。比如:查找973方法一:顺序查找方法二:随机查找方法三:二分查找比较次数:4比较次数:16比较次数:不确定拓展:假设有1024个数字,查找最后一个数字为例。第一次:1024/2=512第二次:512/2=256第三次:256/2=128第四次:128/2=64第五次:64/2=32第六次:32/2=16第七次:16/2=8第八次:8/2=4第九次:4/2=2第十次:2/2=1
通过例题,不难看出,不同的算法,其效果和效率也大不相同。算法的优劣直接影响着所编写程序的质量,算法是程序的灵魂。小结:探究学习:(课本P98)
设计多种算法解决下面问题:1.求1+2+3+4+···+100的值。方法一:逐步累加第一步:1+2=3第二步:3+3=6第三步:6+4=10·····第99步:4950+100=5050方法二:公式项数*(首项+末项)/2优点:不用动太多脑筋优点:计算速度快缺点:计算步骤太多缺点:不容易找到公式探究学习:(课本P98)
设计多种算法解决下面问题:2.求1-2+3-4+5-6+···+99-100的值。方法一:逐步累加第一步:1-2=-1第二步:-1+3=2第三步:2-4=-2·····第99步:方法三:=(1-2)+(3-4)+···+(99-100)=-1*50=-50方法二:两次使用公式项数*(首项+末项)/21+3+5+···+99=25*100=25002+4+6+···+100=25502500-2550=-50优点:不用动太多脑筋优点:计算速度快缺点:计算步骤太多缺点:不容易找到公式优点:计算速度更快缺点:不容易看小结算法有优劣之分,选择合适的算法能够提高程序的质量。所以,在解决问题时,我们要有意识地设计与筛选优质算法,优化问题的解决方案,以节省资源,提高效率。知识扩充:打开文件:桌面——学生文件——算法知识扩充1.著名计算机科学家李国杰院士对算法的精辟论述事实上,计算机发展到今天,能有如此广泛而神奇的应用,除了半导体集成电路芯片制造工艺提高以外,主要靠软件,而软件的核心是算法(不是编程技巧)。从国际上来说,无论是制造芯片的eda软件、多媒体应用的信息压缩技术还是“深蓝”计算机下棋赢了卡斯帕罗夫,都是靠巧妙的算法。在海湾战争中,多国部队庞大的武器、物资流动和人员调配中算法起了关键作用,它的作用可以和芯片平分秋色。从国内看,北大方正的“华光系统”的核心是王选在20世纪70年代中期创立的算法,近年来方正开发的彩排系统,关键也在算法。算法设计是人类智慧的结晶,计算机的知识创新,主要就是算法的创新,创建一种新算法其意义不亚于建造一种新机型。知识扩充:2.算法应具备五个重要特征(1)有穷性:一个算法必须保证执行有限步之后结束。(2)确定性:算法中的每一步骤必须有确切的定义,不允许存在二义性。(3)可行性:算法中所描述的每一步骤都应能有效地执行,并最终能得到确定的结果。(4)输入:一个算法有零个或多个输入。(5)输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的。知识扩充:3.算法优劣的标准判断算法的优劣主要可以从以下几个方面来考虑:(1)正确性。首先这个算法必须是正确的。正确性是指所写的算法能满足具体问题的要求,即对任何合法的输入,算法都会得出正确的结果。(2)可读性。可读性是指该算法被理解的难易程度。一个算法可读性的好坏十分重要,如果一个算法比较抽象,难以理解,那么这个算法就不易交流和推广,对于修改、扩展、维护都十分不利。(3)健壮性。健壮性就是指当输入的数据非法或不合理时,算法也会做出相应的判断,而不会因为输入错误造成程序瘫痪。(4)时间复杂度和空间复杂度。时间复杂度,简单地说就是算法运行所花费的时间,所花费的时间应该是越少越好。不同的算法具有不同的时间复杂度,当解决一个简单问题,就感觉不到时间复杂度的重要性,而当解决一个复杂问题时,便会察觉到时间复杂度是十分重要的。空间复杂度是指算法运行所需的存储空间的多少。随着计算机硬件的发展,空间复杂度已经显得不再那么重要了,但在具体设计算法时也应该注意。知识扩充:总结
1.算法的概念:解决问题的思路和步骤。2.算法的地位:是程序的灵魂。3.算法具有优劣性
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年汽车运输酸碱槽行业深度研究分析报告
- 2025-2030年手绘城市风景壁画行业深度调研及发展战略咨询报告
- 中国空气充气泵行业市场发展监测及投资潜力预测报告
- 2025-2030年可折叠椅行业深度调研及发展战略咨询报告
- 2025-2030年商用节能烤鱼机行业跨境出海战略研究报告
- 智能制造中国制造2025分析报告
- 2025年中国多西环素市场全面调研及行业投资潜力预测报告
- 2025年高隔离分支器项目投资可行性研究分析报告
- 2025年中国老年人康复器材行业市场调查研究及投资战略咨询报告
- 2025年高压SVG市场调查报告
- Unit 4 A glimpse of the future 说课稿-2023-2024学年高二下学期英语外研版(2019)选择性必修第三册001
- 乡村建设规划许可培训
- 加气站安全课件
- 《民营企业清廉建设评价规范》
- 智能RPA财务机器人开发教程-基于来也UiBot 课件 第2章-常用机器人流程自动化
- GB/T 45037-2024粮油机械扒谷机
- 团聚体与土壤有机质转化-洞察分析
- 公务车辆定点加油服务投标文件(技术方案)
- 膝关节镜手术后康复
- 安徽工程大学《回归分析》2023-2024学年第一学期期末试卷
- 读书分享《给教师的建议》课件
评论
0/150
提交评论