- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1.算法耗费的时间和语句频度 【例1-9】 for(i=1;i=n;i++) //频度为n+1 for(j=1;j=n;j++) //频度为n*(n+1) {c[i][j]=0; //频度为n2 for(k=1;k=n;k++) //频度为n2*(n+1) c[i][j]= c[i][j]+a[i][k]*b[k][j] // 频度为n3 该算法的执行时间,用T(n)表示。 T(n)=2n3+3n2+2n+1 算法的时间复杂度T(n)是该算法的时间度量记作 T(n)=O(f(n)) 它表示随问题规模n的增大,算法的执行时间的增长率和f(n)的增长率相同,称作算法的渐近时间复杂度,简称时间复杂度。 2.问题规模和算法的时间复杂度 ++x; s=0; 时间复杂度为O(1)。 【例1-10】 for(i =1;i=n;++i){ ++X;S+=X; } 时间复杂度为O(n)。 【例1-11】 for(j =1;j=n;++j) for(k=1;k=n;++k) {++x; s+=x;} 时间复杂度为O(n2)。 【例1-12】 for ( j=1;j=n;++j) for(k=1;k=j;++k) {++x;s+=x;} 时间复杂度仍为O(n2)。 【例1-13】 各种不同数量级对应的值存在着如下关系: O(1)O(log2n)O(n)O(n*log2n)O(n2)O(n3)O(2n)O(n!) 3.常用算法时间复杂度 指的是该算法在运行过程中所耗费的辅助存储空间,如果一个算法所耗费的存储空间与问题规模n无关,记作S(n)=O(1)。 4.算法的空间复杂度 1.4 本章小结 1.掌握数据结构的基本概念 2.逻辑结构与存储结构的区别 3.抽象数据类型 4.算法和算法分析 * * * * 编译原理 数据结构 第1章 数据结构基础 数据结构的基本概念 本章知识要点: 数据结构和抽象数据类型 算法和算法分析 1.1 数据结构的基本概念 1.1.1 数据结构的研究内容 1.1.2 基本概念和术语 1.1.3 数据结构课程的内容 1.1.1 数据结构的研究内容 数据结构主要研究非数值计算问题。 【例1-1】 学生信息检索系统 学 号 姓 名 性 别 专 业 年 级 2011010001 崔志永 男 计算机科学与技术 2011级 2011030005 李淑芳 女 软件工程 2011级 2012040010 陆丽 女 数学与应用数学 2012级 2012030012 张志强 男 软件工程 2012级 2012010012 李淑芳 女 计算机科学与技术 2012级 2013040001 王宝国 男 数学与应用数学 2013级 2013010001 石国利 男 计算机科学与技术 2013级 2013030001 刘文茜 女 软件工程 2013级 学生基本信息表 姓 名 索引号 姓 名 索引号 姓 名 索引号 崔志永 1 张志强 4 石国利 7 李淑芳 2,5 王宝国 6 刘文茜 8 陆丽 3 【例1-1】 姓名索引表 专 业 索引号 计算机科学与技术 1,5,7 软件工程 2,4,8 数学与应用数学 3,6 【例1-1】 专业索引表 年 级 索引号 年 级 索引号 2011级 1,2 2013级 6,7,8 2012级 3,4,5 【例1-1】 年级检索表 诸如此类的还有电话号码查询问题、考试成绩查询问题、企业进、销、存管理系统等。在这类文档管理的数学模型中,计算机处理的对象之间通常存在的是一种简单的线性关系,这类数学模型可称为线性的数据结构。 【例1-2】 计算机系统组成结构 在这类问题中,计算机处理的对象是树结构,元素之间是一种一对多的层次关系,这类数学模型称为树的数据结构。 【例1-3】 最短路径问题 在这类问题中,元素之间是多对多网状关系,这类数学模型称为图的数据结构。 是介于数学、计算机硬件和软件之间的一门核心课程。 数据结构---- 1.1.2 基本概念和术语 数据(Data):是信息的载体,能够被计算机识别、存储和加工处理。 数据元素(Data Element):是数据的基本单位。 数据项(Data Item): 是组成数据元素的、有独立含义、不可分割的最小单位。 数据对象(Data Object):是相同性质的数据元素的集合,是数据集合的一个子集。 数据结构(Data Structure):是指互相之间存在着一种或多种特定关系的数据元素的集合。 数据结构的形式定义为一个二元组: Data_Structure =(D,R) 其中,D是数据元素的有限集,R是D
文档评论(0)