版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机算法设计与分析第一章概述渐近时间复杂度分析设T(N)是算法A的时间复杂度函数,N是问题规模,N≥0,且N∈Z。当N
∞时,T(N)
∞。对于T(N),如果存在T'(N),使得当N
∞时有那么,我们就说T'(N)是算法A当N
∞的渐近复杂度。渐近时间复杂度分析在渐近复杂度函数T'(N)中,阶与T'(N)中的常数因子没有关系,所以T'(N)可进一步简化,省略常数因子。例1.4中的T'(N)可取值N2即可。需要注意的是,函数简化并不是一种精确计算复杂度的方法,而是一种近似评估的方式。例1.4中的T'(N)=N2/2+5N/2-3渐近时间复杂度分析定义1.1设f(N)和g(N)是正整数集上的函数。如果∃c≥0和自然数N0,使得当N≥N0时有0≤f(N)≤cg(N),则称函数f(N)充分大时上有界,g(N)是f(N)的一个上界,记为f(N)=O(g(N)),即f(N)的阶不高于g(N)的阶,如图所示。不是直接比较f(N)和g(N)的数值大小,O表示的只是一个充分大的上界,上界的阶越低则算法时间复杂度的评估越精确,结果值越有价值N0cg(N)f(N)渐近时间复杂度分析例1.5求5n+4,n2+nlogn,2n+n2,10000的上界。n≥4时,5n+4≤6n,则5n+4=O(n)n≥1时,n2+nlogn≤2n2,则n2+nlogn=O(n2)n≥1时,2n+n2≤2*2n,则2n+n2=O(2n)对于常整数10000,算法执行时间与问题规模无关,无论问题规模多大,算法都在固定时间内完成。因此无论是10000还是其他任何常数输入,它的时间复杂度是一个常数级别的复杂度,即O(1)。渐近时间复杂度分析例1.6给定多项式函数:
试证明T(n)=O(nm)。证明:设n0=1,对于任意的n,若n≥n0=1,则:存在c≥0和自然数n0=1,使得当n≥n0时有T(n)≤cnm,故T(n)=O(nm)成立。渐近时间复杂度分析根据定义1.1,我们有如下O(n)的性质:(1)O(f)+O(g)=O(max(f,g));算法最复杂的部分运行时间就是算法的时间复杂度。(2)O(f)+O(g)=O(f+g);算法中并行语句的时间复杂度等于各个语句运行时间之和。(3)O(f)×O(g)=O(f×g);循环的时间复杂度等于循环体运行时间与循环次数的乘积。(4)O(cf(n))=O(f(n)),c∈Z+;算法的时间复杂度是运行时间函数的数量级。(5)如果g(n)=O(f(n)),则O(f)+O(g)=O(f);算法的时间复杂度是运行时间函数的最高阶。(6)f=O(f)。渐近时间复杂度分析定义1.2设f(N)和g(N)是正整数集上的函数。如果∃c≥0和自然数N0,使得当N≥N0时有f(N)≥cg(N),则称函数f(N)当N充分大时下有界,且g(N)是f(N)的一个下界,记为f(N)=Ω(g(N)),即f(N)的阶不低于g(N)的阶,如图所示。N0cg(N)f(N)渐近时间复杂度分析例1.8求5n+1,n2+nlogn的下界。当n≥1时,5n+1≥5n,则5n+1=Ω(n)当n≥1时,n2+nlogn≥n2,则n2+nlogn
=Ω(n2);n2+nlogn≥nlogn,则n2+nlogn=Ω(nlogn),但nlogn≠Ω(n2)。根据定义1.2可知,n2+nlogn=Ω(n2)和n2+nlogn
=Ω(nlogn)都成立,算法时间复杂度一般取最大下界。下界的阶越高,评估越精确,结果越有价值,Ω通常也表示求解问题的最好情况下的时间复杂度。渐近时间复杂度分析定义1.3设f(N)和g(N)是正整数集上的函数。如果∃c1≥0、∃c2≥0和自然数N0,使得当N≥N0时有0≤c1g(N)≤f(N)≤c2g(N),则称g(N)是f(N)的紧确界。记为f(N)=θ(g(N)),如图1.7所示。若f(N)=θ(g(N)),则当且仅当f(n)=O(g(N))且f(N)=Ω(g(N)),也称g(N)和f(N)同阶。N0c1g(N)f(N)c2g(N)渐近时间
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年金融投资顾问专业能力水平测试题
- 2026年职场技能进阶系列考试试题
- 2026年金融分析师金融投资分析案例题库
- 2026年生物医药行业专业题集含生物技术与临床应用
- 2026年语言类专业研究生入学考试预测模拟卷
- 2026年英语演讲与辩论比赛练习题
- 人工智能在信贷审批中的伦理挑战
- 银行运营流程重构研究
- 融合算法的分布式实现方案
- 2026年国际贸易专员实务操作考核试题及真题
- 2026贵州贵阳市安航机械制造有限公司招聘8人考试重点试题及答案解析
- 2026年空天科技卫星互联网应用报告及未来五至十年全球通信创新报告
- (正式版)DB51∕T 3342-2025 《炉灶用合成液体燃料经营管理规范》
- 2025年上海市普通高中学业水平等级性考试地理试卷(含答案)
- 腔镜器械的清洗与管理
- 江南大学《食品科学与工程》考研真题及答案解析
- 眼科:青光眼患者药物治疗指南
- 2025年计算机等级考试(NCRE)一级人工智能与大模型基础样题及参考答案
- 2025年汉语桥的考试题目及答案
- 医护服务意识培训
- 芬兰烟熏桑拿体验创新创业项目商业计划书
评论
0/150
提交评论