《数据结构》-《数据结构》(C语言版)第二章_线性表ppt课件.ppt

《数据结构》-《数据结构》(C语言版)第二章_线性表ppt课件.ppt

ID:59410709

大小:1.05 MB

页数:91页

时间:2020-09-19

《数据结构》-《数据结构》(C语言版)第二章_线性表ppt课件.ppt_第1页
《数据结构》-《数据结构》(C语言版)第二章_线性表ppt课件.ppt_第2页
《数据结构》-《数据结构》(C语言版)第二章_线性表ppt课件.ppt_第3页
《数据结构》-《数据结构》(C语言版)第二章_线性表ppt课件.ppt_第4页
《数据结构》-《数据结构》(C语言版)第二章_线性表ppt课件.ppt_第5页
资源描述:

《《数据结构》-《数据结构》(C语言版)第二章_线性表ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、学习提要:1.了解线性表的逻辑结构和存储结构。2.掌握两种存储结构的描述方法以及在每种存储结构上的基本操作的实现。3.理解两种存储结构的特点及其使用场合。重难点内容:顺序表、链表及其操作实现1线性结构的基本特征:线性结构是一个数据元素的有序(次序)集。1.集合中必存在唯一的一个“第一元素”;2.集合中必存在唯一的一个“最后元素”;3.除最后元素在外,均有唯一的后继;4.除第一元素之外,均有唯一的前驱。2.1线性表的类型定义2线性表:n个数据元素组成的有限序列。表示为(a1,a2,…,ai,ai+1,…,an)例:英文字母表(

2、A,B,C,…..Z)是一个线性表例:数据元素3线性表的长度:表中元素的个数n(n>=0),n=0空表。位序:元素ai在表中的位置数i。逻辑特征:1

3、ai∈ElemSet,i=1,2,...,n,n≥0}数据关系:R1={

4、ai-1,ai∈D,i=2,...,n}5基本操作:结构初始化操作结构销毁操作引用型操作加工型操作}ADT

5、List6InitList(&L)操作结果:构造一个空的线性表L。初始化操作:结构销毁操作:DestroyList(&L)初始条件:操作结果:销毁线性表L。线性表L已存在。7ListEmpty(L)ListLength(L)PriorElem(L,cur_e,&pre_e)NextElem(L,cur_e,&next_e)GetElem(L,i,&e)LocateElem(L,e,compare())ListTraverse(L,visit())引用型操作:8ListEmpty(L)初始条件:操作结果:线性表L已存在。若L为

6、空表,则返回TRUE,否则FALSE。(线性表判空)ListLength(L)初始条件:操作结果:线性表L已存在。返回L中元素个数。(求线性表的长度)9PriorElem(L,cur_e,&pre_e)初始条件:操作结果:线性表L已存在。若cur_e是L的元素,但不是第一个,则用pre_e返回它的前驱,否则操作失败,pre_e无定义。(求数据元素的前驱)10NextElem(L,cur_e,&next_e)初始条件:操作结果:线性表L已存在。若cur_e是L的元素,但不是最后一个,则用next_e返回它的后继,否则操作失败,

7、next_e无定义。(求数据元素的后继)11GetElem(L,i,&e)初始条件:操作结果:线性表L已存在,且1≤i≤LengthList(L)。用e返回L中第i个元素的值。(求线性表中某个数据元素)12LocateElem(L,e,compare())初始条件:操作结果:线性表L已存在,e为给定值,compare()是元素判定函数。返回L中第1个与e满足关系compare()的元素的位序。若这样的元素不存在,则返回值为0。(定位函数)13ListTraverse(L,visit())初始条件:操作结果:线性表L已存在,V

8、isit()为某个访问函数。依次对L的每个元素调用函数visit()。一旦visit()失败,则操作失败。(遍历线性表)14加工型操作:ClearList(&L)PutElem(&L,i,e)ListInsert(&L,i,e)ListDelete(&L,i,&e)15ClearList(&L)初始条件:操作结果:线性表L已存在。将L重置为空表。(线性表置空)PutElem(&L,i,e)初始条件:操作结果:线性表L已存在,且1≤i≤LengthList(L)。L中第i个元素赋值同e的值。(改变数据元素的值)16ListIn

9、sert(&L,i,e)初始条件:操作结果:线性表L已存在,且1≤i≤LengthList(L)+1。在L的第i个元素之前插入新的元素e,L的长度增1。(插入数据元素)17ListDelete(&L,i,&e)初始条件:操作结果:线性表L已存在且非空,1≤i≤LengthList(L)。删除L的第i个元素,并用e返回其值,L的长度减1。(删除数据元素)18假设:有两个集合A和B分别用两个线性表LA和LB表示,即:线性表中的数据元素即为集合中的成员。现要求一个新的集合A=A∪B。利用上述定义的线性表可以实现其它更复杂的操作。例

10、2-119要求对线性表作如下操作:扩大线性表LA,将存在于线性表LB中而不存在于线性表LA中的数据元素插入到线性表LA中去。算法思想:201.从线性表LB中依次察看每个数据元素;2.依值在线性表LA中进行查访;3.若不存在,则插入之。GetElem(LB,i,&e)LocateElem(L

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。