- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5.1 算法的含义
名师导航
三点剖析
一、算法的含义
在日常生活中做任何一件事情,都是按照一定规则,一步一步进行,比如在工厂中生产一部机器,先把零件按一道道工序进行加工,然后,再把各种零件按一定法则组装成一部完整的机器,它们的工艺流程就是算法;在农村中种庄稼有耕地、播种、育苗、施肥、中耕、收割等各个环节,这些栽培技术也是算法.总之,在任何这些数值计算或非数值计算的过程中所采取的方法和步骤,都称之为算法.一般而言,对一类问题的机械的、统一的求解方法称为算法.
注意:
1.这种描述不是算法的严格定义,但是反映了算法的基本思想.算法的基本思想就是程序化思想.
2.简单地说,算法是完成某项工作的一系列步骤.现代意义上的“算法”通常是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.
3.算法的概念源于数学.比如数学中常用的配方法、换元法、待定系数法等都是解决某一类特定问题的方法,它们的特点是对于某一类特定的问题都有效,都有固定的、机械的步骤,每一步都能得到惟一的结果,只要严格按照步骤进行,就一定可以解决问题.但不要认为只有“计算”的问题才有算法.广义地说,为解决一个问题而采取的方法,就称为算法.例如,我们要发一封电子邮件,一般需要经历以下几个步骤:第一步,打开电子邮箱;第二步,点击“写邮件”;第三步,输入发送地址;第四步,输入主题;第五步,输入信件内容;第六步,点击“发送邮件”.这些步骤从广义上来讲也可以称作是发一封电子邮件的算法.
4.计算机解决任何问题都要依赖于算法.只有将解决问题的过程分解为若干个明确的步骤,即算法,并用计算机能够接受的“语言”准确地描述出来,计算机才能够解决问题.
我们知道,计算机本质上就是一个机械,只不过是一个非常复杂的机械罢了.和所有的机械一样,它能根据特定的指令执行特定的任务.我们不妨拿我们所熟悉的一种机械——钢琴来说明这个道理.钢琴对于人的特定的命令(按键或按键组合)会发出特定的、固定的声音,并且这种基本的对应关系是有限的.正是由于掌握了这种固定的对应关系,钢琴家才能够以此为基础进行创作,如果没有这种固定的对应关系,钢琴家也就无法驾驭钢琴,更谈不上弹奏出优美的旋律了.计算机也是一样,它对于特定的命令(基本命令或由基本命令组合而成的复杂命令),能作出固定的反应(例如对于命令2+3,计算机的反应就是计算出这个算式的值为5),像这种计算机能接受并执行的基本命令或由基本命令所组合而成的复杂命令就是计算机能够接受的“语言”,也正是依靠这种“语言”,我们才能与计算机进行“交流”并且让计算机为我们所用,按照我们的意图去解决问题.
二、算法的特性
一般来讲,一个算法应具有以下五个重要特性:
1.有穷性:一个算法必须总是(对任何合法的输入值)在执行有穷步之后结束,且每一步都可在有穷时间内完成.
算法具有有穷性是为了让算法不能无休止地执行下去,以致达不到解决问题的目的.
数学中的无穷级数,在实际计算时只能取有限项,即计算无穷级数的过程只能是有穷的.因此,一个无穷级数的表示只能是一个计算公式,而根据精度要求确定的计算过程才是有穷的算法.
2.确定性:算法中每一条指令必须有确切的含义,读者理解时不会产生歧义.也就是说,算法的步骤中不能含有模糊不清、容易让人误解的叙述.
确定性是要保证算法在执行过程中,不能因不同的人的喜好、理解不同及其他人为因素而“走样”.事实上,在程序设计中,一个算法必须确定到这样一个程度,即使一台计算机也能遵循这个指示正确执行.从这个角度我们可以看到算法的步骤的一个特点就是:清晰、准确而又机械、刻板、缺乏创造性(但从算法步骤的执行上讲也不需要有创造性,能严格执行就可以了).
3.可行性:算法的可行性包括两个方面:一是算法中的每一个步骤必须是能实现的.例如,在算法中,不允许出现分母为零的情况;在实数范围内不能求一个负数的平方根等.二是算法执行的结果能达到预期的目的.通常,针对实际问题设计的算法,人们总是希望能得到满意的结果.
当然可行性对于不同的人及不同的时代具有不同的含义.仅就计算工具上来讲,古代最好的计算工具大概就是算盘了,而现代的超级计算机无论是在计算的速度还是在可计算问题的范围上都远在其上.古代很多不能完成的计算在现代都变成了可能.
4.输入:算法一定要根据输入的初始数据或给定的初值才能正确执行它的每一步骤.需要注意的是,算法的输入数据和输出数据都应该是离散(分散的、不连续的、可逐个计算的数据)的符号(或称字母,其中也包括数字),例如不能输入一条连续的曲线.(连续曲线上的点是连续的,无法对所有点所
您可能关注的文档
- 数学北师大版选修1-2同步测控3.3.2分析法Word版含解析.doc
- 数学北师大版选修1-2同步测控4.1.2复数的有关概念Word版含解析.doc
- 数学北师大版选修1-2同步测控1.1.3可线性化的回归分析Word版含解析.doc
- 数学北师大版选修1-2同步测控3.4反证法Word版含解析.doc
- 数学北师大版选修1-2知识导航1.1.2相关系数Word版含解析.doc
- 数学北师大版选修1-2同步测控2.1流程图Word版含解析.doc
- 数学北师大版选修1-2知识导航1.2.4独立性检验的应用Word版含解析.doc
- 数学北师大版选修1-2知识导航2.1流程图Word版含解析.doc
- 数学北师大版选修1-2同步测控4.1.1数的概念的扩展Word版含解析.doc
- 数学北师大版选修1-2同步测控3.1.2类比推理Word版含解析.doc
- 数学苏教版必修3名师导航2.1抽样方法Word版含解析.doc
- 数学苏教版必修3互动课堂1.4算法案例Word版含解析.doc
- 数学苏教版必修3名师导航1.3基本算法语句Word版含解析.doc
- 数学苏教版必修3名师导航2.3总体特征数的估计Word版含解析.doc
- 数学苏教版必修3名师导航2.4线性回归方程Word版含解析.doc
- 数学苏教版必修3名师导航2.2总体分布的估计Word版含解析.doc
- 数学苏教版必修3备课资料2.1.1简单随机抽样Word版含答案.doc
- 数学苏教版必修3名师导航3.2古典概型Word版含解析.doc
- 数学苏教版必修3备课资料2.1.3分层抽样Word版含答案.doc
- 数学苏教版必修3备课资料2.2.1频率分布表Word版含答案.doc
文档评论(0)