- 1、本文档共40页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
好算法还是坏算法如何才能简便地判断一个算法的有效性呢?在什么情况下一个问题找不到有效算法来求出正确解??返回第29页,共40页,星期六,2024年,5月算法的时间复杂度——从输入数据到计算出结果所需要的时间,它是输入长n(问题规模)的一个函数。算法的时间复杂性分析第30页,共40页,星期六,2024年,5月时间复杂度例如,求n个数最大者的一个算法如下:max=-999999fori=1:nifnumber(i)maxnmaxn=number(i)endend记T(n)=c1+c2n为这个算法的时间复杂度。通常记T(n)=O(n).第31页,共40页,星期六,2024年,5月好算法还是坏算法时间复杂度若存在正数C和n0,使当n?n0时,一个算法的执行时间T(n)?Cf(n),则称该算法花了f(n)阶的时间,记为T(n)=O(f(n))。第32页,共40页,星期六,2024年,5月时间复杂度分别是O(1),O(n),O(n2)。例:对下面三个简单的程序段,求时间复杂度。1)x=x+12)fori=1:nx=x+1end3)fori=1:nforj=1:nx=x+1endend好算法还是坏算法第33页,共40页,星期六,2024年,5月典型算法的执行时间时间复杂度n2n32nn!计算时间1/64秒2秒274世纪5*2662世纪n=128时各典型算法的执行时间返回第34页,共40页,星期六,2024年,5月有效算法或好算法:以多项式时间为限界的算法。指数时间算法或坏算法:任何多项式都不是其时间复杂度T(n)的上界的算法好算法还是坏算法第35页,共40页,星期六,2024年,5月典型算法的处理规模算法时间复杂度一小时能处理的实例规模提高速度210倍一小时能处理的实例规模A1nN11024N1A2n2N232N2A32nN3N3+10A48nN4N4+3.3返回第36页,共40页,星期六,2024年,5月(1)若0L?,称f1(n)与f2(n)同量级,记为O(f1(n))=O(f2(n));(2)若L=0,则称f1(n)的量级比f2(n)低,记为O(f1(n))O(f2(n));(3)若L=?,则称f1(n)的量级比f2(n)高,记为O(f1(n))O(f2(n))。时间复杂度函数的量级比较第37页,共40页,星期六,2024年,5月显然:1,logn,n,n2,n3,n3,…2n,n!量级是由低到高。时间复杂度函数的量级比较第38页,共40页,星期六,2024年,5月1.无论计算机速度多么高,功能多么强,用指数时间算法不能解大型问题。2.算法的时间复杂度函数的量级越低,算法的效率越高(就大型问题而言)。?返回第39页,共40页,星期六,2024年,5月实验内容1.设某校的田径选拔赛共设六个项目的比赛,即跳高,跳远,标枪,铅球,100米和200米短跑,规定每个选手至多参加三个项目的比赛。现有七名选手报名,选手所选项目如表1所示。现在要求设计一个比赛日程安排表,使得在尽可能短的时间内完成比赛。田径赛的时间安排布置实验第40页,共40页,星期六,2024年,5月数学实验之图的模型及算法初步一种表示工具——图布置实验实验十主要内容一个时间安排问题图论的起源人、狼、羊、菜渡河问题好算法还是坏算法图的矩阵表示方法返回第2页,共40页,星期六,2024年,5月图论的起源:七桥问题第3页,共40页,星期六,2024年,5月cabdcabd图论的起源:七桥问题第4页,共40页,星期六,2024年,5月欧拉——图论之父■定义:线图(图论的研究对象)■定理:一个线图存在通过每边正好一次回到出发点的路线的充要条件是:1)图要是连通的2)与图中每一顶点相连的边必须是偶数条。于是得出结论:七桥问题无解。图论的起源:七桥问题返回第5页,共40页,星期六,20
文档评论(0)