- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2 章节 算法效率分析解析
规则(C) 执行一个for循环语句需要的时间等于执行该循环体所需要的时间乘上循环的次数。 执行一个while循环语句while或一个do while类循环语句需要的时间等于计算条件表达式需要的时间与执行循环S体需要的时间之和乘以循环的次数。与for循环语句不同,这里的循环次数是隐含的。 规则(D) 对goto语句。在时间复杂性分析时可以假设它不需要任何额外的时间。 如果程序滥用了goto语句,即控制转移到前面的语句,那么情况将变得复杂起来。当这种转移造成某种循环时,只要与别的循环不交叉,保持循环的内外嵌套,则可以比照前面的规则进行分析。当由于使用goto语句而使程序结构混乱时,建议改写程序然后再做分析。 规则(E) 对函数调用语句,它们需要的时间包括两部分,一部分用于实现控制转移,另一部分用于执行或函数本身,这时可以根据函数调用的层次,由里向外运用规则(A)-(D)进行分析,直到计算出最外层的运行时间。 如果出现递归调用,我们可以对其中的各个递归过程,所需要的时间假设为一个相应规模的待定函数。然后一一根据过程(或函数)的内涵建立起这些待定函数之间的递归关系得到递归方程。最后用求递归方程解的渐进阶的方法确定最坏情况下的复杂性的渐进阶。 在出现递归调用时要考虑其中隐含的存储空间的额外开销。所需要的额外存储空间的大小(即栈的规模)与递归调用的深度成正比,其比例因子等于每深入一层需要保存的数据量。 递归方程解的渐近阶的求法 递归方程的形式多种多样,求其解的渐近阶的方法也多种多样。比较实用的有: 代入法 迭代法 套用公式法 差分方程法 母函数法 代入法? 这个方法的基本步骤是先推测递归方程的显式解,然后用数学归纳法证明这一推测的正确性。那么,显式解的渐近阶即为所求。 迭代法? 这个方法的基本步骤是通过反复迭代,将递归方程的右端变换成一个级数,然后求级数的和,再估计和的渐近阶;或者,不求级数的和而直接估计级数的渐近阶,从而达到对递归方程解的渐近阶的估计。 套用公式法? 这个方法针对形如:T (n)=aT (n / b)+f(n) 的递归方程,给出三种情况下方程解的渐近阶的三个相应估计公式供套用。 差分方程法? 有些递归方程可以看成一个差分方程,因而可以用解差分方程(初值问题)的方法来解递归方程。然后对得到的解作渐近阶的估计。 母函数法? 这是一个有广泛适用性的方法。它不仅可以用来求解线性常系数高阶齐次和非齐次的递归方程,而且可以用来求解线性变系数高阶齐次和非齐次的递归方程,甚至可以用来求解非线性递归方程。方法的基本思想是设定递归方程解的母函数,努力建立一个关于母函数的可解方程,将其解出,然后返回递归方程的解。 算法分析的内容和意义 介绍一般的算法设计策略,阐述各方法的理论基础、主要思想及其适用范围。同时针对一些具体问题来讲述如何用这些一般的理论以及各种抽象数据类型对问题进行抽象描述,并用最有效的方式设计出解决问题的高效算法。 计算机程序设计方法学的理论、抽象和设计三个过程,通过对算法正确性的证明和复杂性的分析,深化对大问题的复杂性、概念和形式模型、效率和抽象的层次、折衷和结论等在计算机学科中重复出现的概念的理解。 算分析与设计 西南科技大学 算分析与设计 算法效率(Efficiency) 算法效率有什么作用 算法效率是怎样度量的,评价算法优劣的依据是什么 怎样完成算法算法效率分析 算法的复杂性 算法的复杂性是算法效率的度量,是评价算法优劣的重要依据。一个算法的复杂性的高低体现在运行该算法所需要的计算机资源的多少上面,所需的资源越多,我们就说该算法的复杂性越高;反之,所需的资源越低,则该算法的复杂性越低。 计算机的资源,最重要的是时间和空间(即存储器)资源。因而,算法的复杂性有时间复杂性和空间复杂性之分。 算法效率有什么作用 不言而喻,对于任意给定的问题,设计出复杂性尽可能低的算法是我们在设计算法的一个重要目标;另一方面,当给定的问题已有多种算法时,选择其中复杂性最低者,是我们在选用算法应遵循的一个重要准则。因此,算法的复杂性分析对算法的设计或选用有着重要的指导意义和实用价值。 问题 怎样完成算法算法效率分析? 用怎样的一个量来表达一个算法的复杂性; 对于给定的一个算法,怎样具体计算它的复杂性。 复杂性的计量(一) 算法的复杂性是算法运行所需要的计算机资源的量,需要的时间资源的量称作时间复杂性,需要的空间(即存储器)资源的量称作空间复杂性。这个量应该集中反映算法中所采用的方法的效率,而从运行该算法的实际计算机中抽象出来。换句话说,这个量应该是只依赖于算法要解的问题的规模、算法的输入和算法本身的函数。如果分别用N、I和A来表示算法要解问题的规模、算法的输入和算法本身,用C表示算法的复杂性,那么应该有:C =F(N,I,A) 复杂性的计量(二)
您可能关注的文档
- 城市综合体的城市价值跟商业模式(世界13个项目案例例子)(75p).ppt
- 城市综合体的城市价值跟商业模式(下).ppt
- 城市综合体的城市价值跟商业模式.pdf
- 城市综合体的城市价值跟商业模式1454146630.ppt
- 城市综合体的价值体现跟商业模式(世界经典项目案例例子研究探究.ppt
- 齿轮传动效率测定跟分析解析.doc
- 齿轮加工机床的效率、精度、性能等方面介绍.pdf
- 齿轮效率实验指导书.doc
- 冲突、谈判跟管理(ppt 42页).ppt
- 冲突跟谈判.ppt
- 广东省东莞市2024-2025学年八年级上学期生物期中试题(解析版).pdf
- 非遗剪纸文创产品开发经理岗位招聘考试试卷及答案.doc
- 广东省东莞市2024-2025学年高二上学期期末教学质量检查数学试题.pdf
- 体育安全理论课件图片素材.ppt
- 3.1 公民基本权利 课件-2025-2026学年道德与法治八年级下册 统编版 .pptx
- 广东省潮州市湘桥区城南实验中学等校2024-2025学年八年级上学期期中地理试题(解析版).pdf
- 大数据运维工程师岗位招聘考试试卷及答案.doc
- 广东省深圳市福田区八校2026届数学八年级第一学期期末教学质量检测模拟试题含解析.doc
- 广东省潮州市湘桥区城基初级中学2024-2025学年八年级上学期11月期中考试数学试题(解析版).pdf
- 广东省潮州市湘桥区城西中学2024-2025学年八年级上学期期中地理试题(解析版).pdf
最近下载
- 2024版人教版七年级上册数学数轴动点问题专项练习每日一练.pdf VIP
- 部编(统编)人教版八年级上册初中道德与法治期末总复习全册知识点.pdf VIP
- 卫生用品股份有限公司成人纸尿裤生产线安全风险分级管控清单.docx VIP
- 酒店安全管理培训.pptx VIP
- 煤矿主要通风机无计划停止运转应急预案.doc VIP
- 2022年新生儿科一病区第二季度理论考试题 (3).docx VIP
- 钢结构测量施工方案.docx VIP
- 电力拖动自动控制系统课程设计指导书.pdf VIP
- 3材科:晶体结构缺陷.ppt VIP
- 国际法(吉林大学)中国大学MOOC 慕课 章节测验 期末考试答案.pdf VIP
原创力文档


文档评论(0)