10算法分析.ppt

  1. 1、本文档共68页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
10算法分析

An Introduction to Database Systenm 算法 常数阶 Θ(1) 对数阶 Θ(log2n) 线性阶 Θ(n) 线性对数阶 Θ(nlog2n) 平方阶 Θ(n2) 立方阶 Θ(n3) k次方阶 Θ(nk) 指数阶 Θ(2n) 规则1:循环 循环次数乘以循环体需要的时间 规则3:顺序语句 各语句执行时间之和 for(i = 0; i n; i++) a[i] = 0; for(i = 0; i n; i++) for(j = 0; j n; j++) a[i] += a[j] + i+ j; 规则4:if/else if(condition) s1; else s2; 时间小于测试condition的时间和S1和S2中最大的时间之和 n×n矩阵的元素值的和 float sum(float a[][]){ result = 0; for(i = 0; i n; i++) for(j = 0; j n; j++) result += a[i][j]; return result; } n×n×n×n矩阵的元素值的和 float sum(float a[][][][]){ result = 0; for(i = 0; i n; i++) for(j = 0; j n; j++) for(k = 0; k n; k++) for(l = 0; l n; l++) result += a[i][j][k][l]; return result; } n×n矩阵的下三角元素值的和 float sum(float a[][]){ result = 0; for(i = 0; i n; i++) for(j = 0; j = i; j++) result += a[i][j]; return result; } 语句result += a[i][j];执行了多少次? 算法分析 int locate(SqList L, int x){ for(i=1; i=L.length; i++){ if(x == L.elem[i-1]) return i; } return 0; } 箔骸枢梗揽述恨憋穿伤匝库琅芭纪订贡梁喘踊冠谆妒洲拷谅晤旁沃裙蜀贴10算法分析10算法分析 算法分析 语句if(x == L.elem[i-1]) return i执行了n(length)次,因此,逻辑运算执行了n次 需要时间为n 语句for(i=1; i=L.length; i++)由三部分构成: i=1执行一次,时间为 1 i=L.length和i++执行了n次,时间为2n 需要时间为2n + 1 嫡拴搁忘妨附浓披谅啊表角甚囊袍扰婴地悟邻仆度鹊班陛鸭忆岳购辆捍林10算法分析10算法分析 算法分析 忽略掉函数进入和返回需要的时间 T(n) = n+2n+1 =3n+1 添佬怔刚云林树先语聂峡疟错鞠廉久必穗行通梁克涣司拢廊淘纹环楷倾甸10算法分析10算法分析 算法分析 int locate(SqList L, int x){ i=1, j=L.length; while(i=j){ p=(i + j ) / 2 if(L.elem[p-1] = = x) return p; } if(L.elem[p-1] x) i=p+1; else j=p-1 } return 0 抱纽浮扰橙烈诈雨触捌贴饰屑闹篡缅第来雄程溃交捶虏举仔隋豹捆锅氓禾10算法分析10算法分析 算法分析 语句i=1, j=L.length需要的时间为2 执行一次while需要的时间为5 p=(i + j ) / 2 if(L.elem[p-1] = = x) return p; if(L.elem[p-1] x) i=p+1; else j=p-1 } while(i=j){ 浙坷酸淄终邹饶局芽秆鳃逼平乡景桌务酒熏倪认黔吐盲肃朝宴腰漱文佣惦10算法分析10算法分析 算法分析 while要执行多少次? n≤2m 2m-1 2m-2 …… 22 21 20 m+1次 2m≥n m ≥log2n

文档评论(0)

fc86033 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档