清华大学数据结构课件第一章.pptVIP

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课程内容: 数据结构 课时安排: 上课——32学时 上机——32学时 待定 系机房 1.1 什么是数据结构 程序=数据结构+算法 例1 书目自动检索系统 例2 人机对奕问题 多叉路口交通灯管理问题 古老的七桥问题 数据结构定义: 是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和操作等等的学科 1.2 基本概念和术语 集合(set)—若干具有共同可变特征的事物的“聚合”。 数据(data) —所有能输入到计算机中去的描述客观事物的符号 数据元素(data element)—数据的基本单位,也称节点(node)或记录(record) 数据项(data item)—有独立含义的数据最小单位,也称域(field) 关键码(key)—数据元素中能起标识作用的数据项。 关系 —集合中元素之间的某种相关性 数据结构(data structure)—数据元素和数据元素关系的集合 数据的逻辑结构—只抽象反映数据元素的逻辑关系 数据的存储(物理)结构—数据的逻辑结构在计算机存储器中的实现 数据类型—高级语言中指数据的取值范围及其上可进行的操作的总称 1.3 抽象数据类型的表示与实现 抽象数据类型(abstract data type)—指一个数学模型以及定义在该模型上的一组操作。 “抽象”的意义在于强调数据类型的数学特性 与其在计算机内部如何表示和实现无关 1.4 算法和算法分析 算法(algorithm)—解决某一特定问题的具体步骤的描述,是指令的有限序列 算法特性— 算法效率——用依据该算法编制的程序在计算机上执行所消耗的时间来度量 1.事后统计——利用计算机内记时功能,不同算法的程序可以用一组或多组相同的统计数据区分 缺点:?必须先运行依据算法编制的程序 ?所得时间统计量依赖于硬件、软件等环境因素,掩盖算法本 身的优劣 2.事前分析估计——一个高级语言程序在计算机上运行所消耗的时间取决于: ?依据的算法选用何种策略 ?问题的规模 ?程序语言 ?编译程序产生机器代码质量 ?机器执行指令速度 同一个算法用不同的语言、不同的编译程序、在不同的计算机上运行,效率均不同,———所以使用绝对时间单位衡量算法效率不合适 一般:算法中基本操作重复执行的次数是问题规模n的某个函数f(n) 时间复杂度:随问题规模n的增大,算法执行时间的增长率和f(n)的增长率相同,称作算法的渐进时间复杂度。简称时间复杂度。——即基本操作(原操作)重复执行的次数的阶数 T(n)=o(f(n)) 空间复杂度:算法所需存储空间的量度 S(n)=o(f(n)) * 教材: 数据结构及应用算法教程(第二版) 严蔚敏 陈文博 清华大学出版社 第一章 绪言 登录号: 书名: 作者名: 分类号: 出版单位: 出版时间: 价格: 书目卡片 书目文件 按书名 按作者名 按分类号 索引表 线性表 树 …….. …….. …... …... …... …... 图 C E D A B AB AC AD BA BC BD DA DB DC EA EB EC ED 图 A B D C A D C B 根据数据元素间关系的基本特性,有四种基本数据结构 (集合)——数据元素间除“同属于一个集合”外,无其它关系 线性结构——一个对一个,如线性表、栈、队列 树形结构——一个对多个,如树 图状结构——多个对多个,如图 Group=(P,R) 其中:P={T,G1,…,Gn,S11…Snm} 1≤n ≤3,1≤m≤2 R={R1,R2} R1={T,Gi| 1 ≤ i ≤ n,1 ≤ n ≤ 3} R2={Gi,Sij| 1≤i≤n,1≤j≤m,1 ≤n≤3,1≤m≤2} 数据结构的形式定义为: 数据结构是一个二元组Data_Structure=(D,S) 其中:D是数据元素的有限集,S是D上关系的有限集。 例1-5 假设我们需要编制一个事务管理的程序,管理学校科学研究课题小组的各 项事务,则首先要为程序的操作对象——课题小组设计一个数据结构。假设每个小组由 一位教师、一至三名研究生及一至六名本科生组成,小组成员之间的关系是;教师指导研 究生,而由每位研究生指导一至两名本科生。则可以如下定义数据结构: 数据的逻辑结构与存储结构密切相关 算法设计 逻辑结构 算法实现 存储结构 存储结构分为: 顺序存储结构——借助元素在存储器中的相对位置来表示 数据元素间的逻辑关系 链式存储结构——

您可能关注的文档

文档评论(0)

大漠天下 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档