数据结构教学课件作者李学刚电子课件源代码单元1数据结构与算法幻灯片.pptVIP

数据结构教学课件作者李学刚电子课件源代码单元1数据结构与算法幻灯片.ppt

  1. 1、本文档共25页,可阅读全部内容。
  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文档。上传文档
查看更多
数据结构 教学目标 【知识目标】 了解数据、数据元素、数据结构、逻辑结构、存储结构的有关概念 掌握数据结构包含的三个方面、逻辑结构的分类、基本逻辑结构、顺序存储和链式存储方法 掌握算法及算法的特性 理解和掌握算法分析的方法 【能力目标】 能熟练地对算法进行时间复杂度分析,从而选择一个好的算法。 引例描述 求两个n 阶方阵的乘积C=A×B,其算法如下,计算该算法的时间复杂度。程序段如下: for(i=0;in;i++)   for(j=0;jn;j++)   {     c[i][j]=0;     for(k=0;kn;k++)       c[i][j]+=a[i][k]*b[k][j];   } 1.1 数据结构的概念 1.数据(Data) 数据是信息的载体。它能够被计算机识别、存储和加工处理。 2.数据元素(Data Element) 数据元素是数据的基本单位。数据元素也称元素、结点、顶点、记录。 3.数据项(Data item) 数据项是具有独立含义的最小标识单位。一个数据元素可以由若干个数据项(也可称为字段、域、属性)组成。 4.数据结构(Data Structure) 数据结构指的是数据之间的相互关系,即数据的组织形式。数据结构一般包括以下三方面内容: 知识储备 (1)数据的逻辑结构:数据元素之间的逻辑关系。 数据的逻辑结构是从逻辑关系上描述数据,与数据的存储无关,是独立于计算机的。数据的逻辑结构可以看作是从具体问题抽象出来的数学模型。 数据(逻辑)结构的形式定义:数据结构是一个二元组(D,R),其中D是数据元素的有限集,R是D上关系的有限集。 (2)数据的存储结构:数据元素及数据元素之间的关系在计算机存储器内的表示。 数据的存储结构是逻辑结构用计算机语言的实现(亦称为映象),它依赖于计算机语言。对机器语言而言,存储结构是具体的。一般,只在高级语言的层次上讨论存储结构。 【示例】某个班学生成绩表,包括:学号、姓名和各科成绩,每一个学生的信息都是一个数据元素,数据元素之间有这样的逻辑关系:在一个数据元素的前面最多有一个与其相邻的数据元素(称为直接前驱),在一个数据元素的后面也最多有一个与其相邻的数据元素(称为直接后继)。数据元素之间的这种关系构成了学生成绩表的逻辑结构。 (3)数据的运算:即对数据施加的操作。 数据的运算定义在数据的逻辑结构上,只有确定了存储结构,才能具体实现这些运算。 数据的运算通常包括以下五个操作: ①插入:在指定位置上添加一个新结点。 ②删除:删去指定位置上的结点。 ③更新:修改某结点的值。 ④查找:寻找满足指定条件的结点及其位置。 ⑤排序:按指定的顺序使结点重新排列。 1.2 数据的逻辑结构与存储结构 1.数据的逻辑结构 ??? 数据的逻辑结构有以下两大类: ①线性结构 有且仅有一个开始结点和一个终端结点,且所有结点都最多只有一个直接前驱和一个直接后继。 线性表是一个典型的线性结构。栈、队列、串等都是线性结构。 ②非线性结构 一个结点可能有多个直接前驱和多个直接后继。 多维数组、广义表、树和图等数据结构都是非线性结构。 2.基本逻辑结构 ①集合结构:数据元素的有限集合。数据元素之间除了“属于同一个集合”的关系之外没有其他关系。 ②线性结构:数据元素的有序集合。数据元素之间形成一对一的关系。 ③树型结构:树是层次数据结构,树中数据元素之间存在一对多的关系。 ④图状结构:图中数据元素之间的关系是多对多的。 集合结构 线性结构 树型结构 图状结构 3.存储结构 存储结构可用以下四种存储方法得到: ①顺序存储方法:把逻辑上相邻的结点存储在物理位置上相邻的存储单元里,结点之间的逻辑关系由存储单元的邻接关系来体现。由此得到的存储表示称为顺序存储结构。通常借助程序设计语言的数组来描述。 ②链接存储方法:该方法不要求逻辑上相邻的结点在物理位置上也相邻,结点间的逻辑关系是由附加的指针字段来表示的。由此得到的存储表示称为链式存储结构。通常借助程序设计语言的指针来描述。如图: 3000 11301 …… 89.5 4000 11303 …… 90.5 3050 11325 …… 83 3020 11318 …… 78 NULL head 3000 4000 3050 3020 ③索引存储方法:在建立结点信息的同时,还要建立附加的索引表来标识结点的地址。索引表中的每一项称为索引项,索引项由结点的关键字和该结点的存储地址

文档评论(0)

开心农场 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档