- 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.1 什么是数据结构
计算机是一门研究用计算机进行信息表示和处理的科学。这里面涉及到两个问题:(1)信息的表示;(2)信息的处理
而信息的表示和组织又直接关系到处理信息的程序的效率。现在许多系统程序和应用程序的规模越来越大,结构变得十分复杂。
为了编写出一个“好”的程序,必须分析待处理对象的特征及各对象之间存在的关系,这就是数据结构这门课所要研究的问题。
【定义】
数据结构:研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和操作的学科。
1.1.1数据结构示例
【例1-1】图书目录表
【例1-2】磁盘目录结构和文件管理系统
【例1-3】逻辑磁盘上的目录结构和文件管理系统
【例1-4】教学计划编排问题
1.1.2基本概念和术语
数据(Data)
对信息的一种符号表示。在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称。
数据元素(Data Element):
数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。
数据对象(Data Object)
是性质相同的数据元素的集合。是数据的一个子集。
如:整数的数据对象是{…-3,-2,-1,0,1,2,3,…}
英文字符类型的数据对象是{A,B,C,D,E,F,…}
数据类型(Data Type)
是一组性质相同的值的集合以及定义在这个值集合上的一组操作的总称。例如: 整型,字符型、浮点型、双精度
抽象数据类型(Abstruct Data Type,简称ADT)
ADT是指一个数学模型以及定义在该模型上的一组操作,可看作是数据的逻辑结构及其在逻辑结构上定义的操作。
抽象数据类型的定义仅取决于它的一组逻辑特性,而与其在计算机内部如何表示和实现无关。
1.1.3数据结构(Data Structure)
数据结构是研究数据元素(Data Element)之间抽象化的相互关系(逻辑结构)和这种关系在计算机中的存储表示(物理结构),并对这种结构定义相适应的运算,设计出相应的算法。
数据结构主要指逻辑结构和物理结构。
1. 逻辑结构:
数据之间的相互关系称为逻辑结构。通常分为 4 类基本结构:
集合
结构中的数据元素除了同属于一种类型外,别无其它关系。
线性结构
结构中的数据元素之间存在一对一的关系。
树型结构
结构中的数据元素之间存在一对多的关系。
图状结构或网状结构
结构中的数据元素之间存在多对多的关系。
数据结构的形式定义为:数据结构是一个二元组:
Data-Structure=(D,S)
其中:D是数据元素的有限集,S是D上关系的有限集。
例 复数的数据结构定义如下:
Complex=(C,R)
其中:C是含两个实数的集合﹛C1,C2﹜,分别表示复数的实部和虚部。R={P},P是定义在集合C上的一种关系{〈C1,C2〉}。
【例1-5】 设一个数据结构的描述如下:
D=(K,R)
K={1,2,3,4,5,6,7,8,9}
R={1,2,1,3,3,4,3,5,4,6,4,7,5,8,7,9}
试画出对应的逻辑结构图,并给出哪些是开始结点,哪些是终端结点,说明是何种数据结构。
【解】
【例1-6】 设一个数据结构的描述如下:
D=(K,R)
K={1,2,3,4}
R={1,2,1,3,1,4,2,3,2,4,3,4}
试画出对应的逻辑结构图,说明是何种数据结构。
【解】
(图状结构)
2. 存储结构(物理结构):
数据结构在计算机中的表示称为数据的物理结构,又称为存储结构。
数据既可以存放在一块连续的内存单元中,通过元素在存储器中的位置来表示它们之间的逻辑关系(顺序);
也可以随机分布在内存中的不同位置,通过指针元素表示数据元素之间的逻辑关系(链式)。这两种不同的表示方法对应有四种不同的存储结构(亦称方式):顺序存储结构、链式存储结构、索引存储结构和散列存储结构。
顺序存储结构
是把逻辑上相邻的结点存储在物理上相邻的存储单元里,结点之间的逻辑关系由存储单元位置的邻接关系来体现。
优点:占用较少的存储空间;
缺点:由于只能使用相邻的一整块存储单元,因此可能产生较多的碎片现象。
顺序存储结构通常借助程序语言中的数组来描述。
顺序存储结构主要应用于线性的数据结构。
链式存储结构
将结点所占的存储单元分为两部分,一部分存放结点本身的信息,另一部分存放结点的后继结点地址,结点间的逻辑关系由附加的指针字段表示。
链式存储结构常借助于程序语
文档评论(0)