华东理工大学数据结构第1章.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《华东理工大学数据结构第1章.ppt》由会员分享,可在线阅读,更多相关《华东理工大学数据结构第1章.ppt(34页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数数据据结结构构信息学院信息学院1参考书:参考书:数据结构题集(数据结构题集(c语言版)严蔚敏等编语言版)严蔚敏等编2第一章第一章绪绪论论1.1数据结构讨论的范畴数据结构讨论的范畴1.2基本概念和术语基本概念和术语1.3算法和算法的衡量算法和算法的衡量3第一章第一章绪绪论论1.1数据结构讨论的范畴数据结构讨论的范畴NiklausWirthAlgorithm+DataStructures=Programs程序设计程序设计:为计算机处理问题编制一组指令集为计算机处理问题编制一组指令集涉及到两个问题:涉及到两个问题:信息的表示信息的表示 信息的处理信息的处理算法算法:处理问题的策略处理问题的策略数据
2、结构数据结构:问题的数学模型问题的数学模型4包括包括:数值计算的程序设计问题数值计算的程序设计问题 结构静力分析计算结构静力分析计算线性代数方程组线性代数方程组全球天气预报全球天气预报环流模式方程环流模式方程非数值计算的程序设计问题非数值计算的程序设计问题 例一例一:求一组求一组(n个个)整数中的最大值整数中的最大值 算法算法:基本操作是基本操作是“比较两个数的大小比较两个数的大小”模型:模型:?例二:计算机对弈例二:计算机对弈 算法:算法:对弈的规则和策略对弈的规则和策略 模型:模型:?5例三:足协的数据库管理例三:足协的数据库管理算法:算法:需要管理的项目?如何管理?用需要管理的项目?如何
3、管理?用户界面?户界面?模型:模型:?数据结构描述现实世界实体的数学模型数据结构描述现实世界实体的数学模型(非非数值计算数值计算)及其上的操作在计算机中的表示和及其上的操作在计算机中的表示和实现实现61.2 1.2 基本概念和术语基本概念和术语一、数据与数据结构一、数据与数据结构数据数据:所有能被输入到计算机中,且被计算机处理的符所有能被输入到计算机中,且被计算机处理的符号的集合号的集合 计算机操作的对象的总称计算机操作的对象的总称 是计算机处理的信息的某种特定的符号表示形式是计算机处理的信息的某种特定的符号表示形式数据元素数据元素:数据中的一个数据中的一个“个体个体”,数据结构中讨,数据结构
4、中讨论的基本单位论的基本单位数据项:数据项:数据结构中讨论的最小单位数据结构中讨论的最小单位数据元素是数据项的集合数据元素是数据项的集合7姓名姓名俱乐部名称俱乐部名称出生日期出生日期 参加日期参加日期职务职务业绩业绩其中其中出生日期出生日期年年月月日日是组合项是组合项例如:例如:运动员(数据元素)运动员(数据元素)8数据结构:数据结构:带结构结构的数据元素的集合例如例如,一个含一个含12位数的十进制数位数的十进制数可以用三个三个4位的十位的十进制数进制数表示3214,6587,9345a1(3214),a2(6587),a3(9345)在在a1、a2和和a3之间存在之间存在“次序次序”关系关系
5、:、3214,6587,93456587,3214,9345a1a2a3a2a1a39又例,又例,2行行3列的二维数组列的二维数组a1,a2,a3,a4,a5,a6a1 a2 a3a4 a5 a6行的次序关系行的次序关系:row=,列的次序关系列的次序关系:col=,数据结构:数据结构:带结构结构的数据元素的集合再例,一维数组再例,一维数组a1,a2,a3,a4,a5,a6中存在中存在次序关系次序关系:|i=1,2,3,4,5,610一、一、集合集合结构中的数据元素除了同属于一种结构中的数据元素除了同属于一种类型外,别无其它关系。类型外,别无其它关系。二、二、线性结构线性结构结构中的数据元素之
6、间存在一结构中的数据元素之间存在一对一的关系。对一的关系。三、三、树型结构树型结构结构中的数据元素之间存在一结构中的数据元素之间存在一对多的关系。对多的关系。四、四、图状结构或网状结构图状结构或网状结构结构中的数据元素结构中的数据元素之间存在多对多的关系。之间存在多对多的关系。数据的逻辑结构可归结为以下四类数据的逻辑结构可归结为以下四类:11数据结构的形式定义为:数据结构是一个二元组:数据结构的形式定义为:数据结构是一个二元组:Data-Structure=(D,S)其中:其中:D是数据元素的有限集,是数据元素的有限集,S是是D上关系的有上关系的有限集。限集。d1d2数据元素数据元素之间的关系
7、若若d1d1和和d2d2表示两个数据元素,它们具有关系表示两个数据元素,它们具有关系d1,d2d1,d2.12例例 复数的数据结构定义如下:复数的数据结构定义如下:Complex=(C,R)其中:其中:C是含两个实数的集合是含两个实数的集合C1,C2,分别分别表示复数的实部和虚部。表示复数的实部和虚部。R=P,P是定义在集合是定义在集合上的一种关系上的一种关系C1,C2。严格地讲,以上定义仅是数据的逻辑结构的定义严格地讲,以上定义仅是数据的逻辑结构的定义13数据元素的映象方法数据元素的映象方法:数据的存储结构数据的存储结构数据结构在计算机中的表数据结构在计算机中的表示,即逻辑结构在存储器中的映
8、象示,即逻辑结构在存储器中的映象,又称为又称为物物理结构理结构用二进制位用二进制位(bit)的位串表示数据元素的位串表示数据元素(321)10=(501)8=(101000001)2A=(101)8=(001000001)214数据区数据区 指针区指针区链式映象链式映象:以附加信息以附加信息(指针指针)表示后继关系表示后继关系需要用一个和需要用一个和x在一起的附加信息指示在一起的附加信息指示y的存储位置的存储位置数据元素之间关系的两种映象方法:(表示数据元素之间关系的两种映象方法:(表示 的方法)的方法)顺序映象顺序映象:以存储位置的相邻表示后继关系以存储位置的相邻表示后继关系y的存储位置和的
9、存储位置和x的存储位置之间差一个常量的存储位置之间差一个常量C而而C是一个隐含值,是一个隐含值,整个存储结构中只含数据元整个存储结构中只含数据元素本身的信息素本身的信息.15当用高级程序设计语言进行编程时,通常可用当用高级程序设计语言进行编程时,通常可用高级编程语言中提供的数据类型描述之。高级编程语言中提供的数据类型描述之。例如例如:以三个带有次序关系的整数表示一个长以三个带有次序关系的整数表示一个长整数时,可利用整数时,可利用C语言中提供的整数数组类型,语言中提供的整数数组类型,定义长整数定义长整数为为:typedefintLong_int3在不同的编程环境中,存储结构可有不同的描在不同的编
10、程环境中,存储结构可有不同的描述方法,述方法,16二、数据类型二、数据类型在用高级程序语言编写的程序中,必须对程序在用高级程序语言编写的程序中,必须对程序中出现的每个变量、常量或表达式,明确说明中出现的每个变量、常量或表达式,明确说明它们所属的数据类型。因为类型明显或隐含地它们所属的数据类型。因为类型明显或隐含地规定了,在程序执行期间,变量或表达式所有规定了,在程序执行期间,变量或表达式所有可能取值的范围,以及在这些之上允许进行的可能取值的范围,以及在这些之上允许进行的操作。操作。数据类型是一个值的集合和定义在此集合上的数据类型是一个值的集合和定义在此集合上的一组操作的总称。一组操作的总称。1
11、7三、抽象数据类型三、抽象数据类型(AbstractDataType简称简称ADT)ADT有两个重要特征有两个重要特征:数据抽象数据抽象用用ADT描述程序处理的实体时,描述程序处理的实体时,强调的是强调的是其本质的特征、其所能完成的功能以及它其本质的特征、其所能完成的功能以及它和外部用户的接口和外部用户的接口(即外界使用它的方法)(即外界使用它的方法)数据封装数据封装将实体的外部特性和其内部实现细节分离,将实体的外部特性和其内部实现细节分离,并且对外部用户隐藏其内部实现细节并且对外部用户隐藏其内部实现细节是指一个数学模型以及定义在此数学模型上是指一个数学模型以及定义在此数学模型上的一组操作的一
12、组操作18例如例如抽象数据类型复数的定义:抽象数据类型复数的定义:ADTComplex数据对象:数据对象:De1,e2e1,e2RealSet数据关系:数据关系:R1|e1是复数的实数部分是复数的实数部分,e2是复数的虚数部分是复数的虚数部分基本操作:基本操作:InitComplex(&Z,v1,v2)操作结果:构造复数操作结果:构造复数Z,其实部和虚部分别被赋以参数其实部和虚部分别被赋以参数v1和和v2的值。的值。DestroyComplex(&Z)操作结果:复数操作结果:复数Z被销毁。被销毁。GetReal(Z,&realPart)初始条件:复数已存在。操作结果:用初始条件:复数已存在。操
13、作结果:用realPart返回复数返回复数Z的实部值。的实部值。GetImag(Z,&ImagPart)初始条件:复数已存在。操作结果:用初始条件:复数已存在。操作结果:用ImagPart返回复数返回复数Z的虚部值。的虚部值。Add(z1,z2,&sum)初始条件:初始条件:z1,z2是复数。操作结果:用是复数。操作结果:用sum返回两个复数返回两个复数z1,z2的和值。的和值。ADTComplex假设假设:z1和和z2是上述定义的复数,则是上述定义的复数,则Add(z1,z2,z3)操作操作的结果将得到的结果将得到z3=z1+z219抽象数据类型的描述方法抽象数据类型的描述方法抽象数据类型可
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 华东理工大学 数据结构
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内