数-据-结-构-西南财经大学课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《数-据-结-构-西南财经大学课件.ppt》由用户(ziliao2023)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 西南财经大学 课件
- 资源描述:
-
1、数数 据据 结结 构构线性结构线性结构 数据结构 逻辑结构和物理结构 四种逻辑结构 集合、线性结构、树形结构、图状结构 什么是线性结构?存在唯一的被称作“第一个”的数据元素 存在唯一的被称作“最后一个”的数据元素 除第一个之外,每个数据元素只有一个前驱;除最后一个之外,每个元素只有一个后继。本章目标:本章目标:l理解线性表的逻辑结构及定义l掌握线性表的顺序存储表示和操作实现l掌握线性表的链式存储表示和操作实现l线性表结构的应用举例第二章第二章 线性表线性表 线性表(Linear List):n个数据元素组成的有限序列,记做(a1,a2,an)。数据元素的个数n定义为表的长度。当n=0时称为空表
2、。数据元素ai(1in)在不同的情况下有不同的含义。例:26个英文字母组成的字母表(A,B,C、Z)是一个线性表:长度为26 每个数据元素代表一个英文字母2.1 线性表的定义线性表的定义例:一副扑克的点数也可以看成一个线性表:(2,3,4,J,Q,K,A)例:某校从1978年到1983年计算机拥有量的变化情况用线性表表示为:(6,17,28,50,92,188)线性表举例线性表举例线性表举例线性表举例 例:学生健康情况登记表如下 数据元素(记录)、数据项(表项)、线性表(文件)姓 名学 号性 别年龄 健康情况王小林790631 男 18 健康陈 红790632 女 20 一般刘建平790633
3、 男 21 健康张立立790634 男 17 神经衰弱.请大家列举线性表ADT定义的三要素:数据对象D=ai|i=1,2,n,n0数据关系R=|aiD,i=2,n基本操作创建空表、销毁表、清空、返回表长;查询、修改、插入、删除表中元素;返回前驱、返回后继P19在这些基本操作上,可以进行更复杂的操作。抽象数据类型线性表的定义抽象数据类型线性表的定义 例2-1 利用两个线性表LA和LB分别表示两个集合A和B,现要求一个新的集合A=AB。void union(List&La,List Lb)La-len=ListLength(La);Lb-len=ListLength(Lb);for(i=1;i=L
4、b-len;i+)GetElem(Lb,i,e);if(!LocateElem(La,e,equal)ListInsert(La,+La-len,e)利用基本操作进行线性表合并利用基本操作进行线性表合并 例2-2 巳知线性表LA和线性表LB中的数据元素按值非递减有序排列,现要求将LA和LB归并为一个新的线性表LC,且LC中的元素仍按值非递减有序排列。分析:LA=3,5,8,11 LB=2,6,8,9,11,15,20;那么 LC=?算法归纳 当a b时,c=a 当ab时,c=b 利用基本操作进行线性表有序合并利用基本操作进行线性表有序合并void MergeList(list La,list
5、Lb,list&Lc)InitList(Lc);i=j=1;k=0;La-len=ListLength(La);Lb-len=ListLength(Lb);while(i=La-len)&(j=Lb-len)GetElem(La,i,ai);GetElem(Lb,j,bj);if(ai=bj)ListInsert(Lc,+k,ai);+i;else ListInsert(Lc,+k,bj);+j;while(i=La-len)GetElem(La,i+,ai);ListInsert(Lc,+k,ai);while(jnext指向线性表中的第i+1个元素(结点ai+1).p-data=ai,那么
展开阅读全文