网站大量收购独家精品文档,联系QQ:2885784924

数据结构课件第二章.pptxVIP

  1. 1、本文档共10页,可阅读全部内容。
  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文档。上传文档
查看更多

第二章线性表

2.1线性表的类型定义2.3线性表类型的实现?链式映象2.4一元多项式的表示2.2线性表类型的实现?顺序映象

PARTONE2.1线性表的类型定义

一个线性表是n个数据元素的有限序列。线性表中元素的个数n被定义为线性表的长度,n=0时称为空表。线性表是一种最简单的线性结构。线性表的概念

线性结构的基本特征为:1.集合中必存在唯一的一个“第一元素”;2.集合中必存在唯一的一个“最后元素”;3.除最后元素在外,均有唯一的后继;4.除第一元素之外,均有唯一的前驱。线性结构是一个数据元素的有序(次序)集

例如:英文字母表(A,B,…,Z)就是一个简单的线性表,表中的每一个英文字母是一个数据元素,每个元素之间存在唯一的顺序关系,如在英文字母表字母B的前面是字母A,而字母B的后面是字母C。在较为复杂的线性表中,数据元素(dataelements)可由若干数据项组成,如学生成绩表中,每个学生及其各科成绩是一个数据元素,它由学号、姓名、各科成绩及平均成绩等数据项(item)组成,常被称为一个记录(record),含有大量记录的线性表称为文件(file)。

数据项表2-1车辆登记表数据元素(记录)

线性表的特点可概括如下:有穷性:线性表由有限个数据元素组成,表长度就是表中数据元素的个数。由此可看出,线性表是一种最简单的数据结构,因为数据元素之间是由一前驱一后继的直观有序的关系确定;线性表又是一种最常见的数据结构,因为矩阵、数组、字符串、堆栈、队列等都符合线性条件。同一性:线性表由同类数据元素组成,每一个ai必须属于同一数据对象。有序性:线性表中相邻数据元素之间存在着序偶关系ai,ai+1。12345

抽象数据类型线性表的定义如下:数据关系:{称n为线性表的表长;称n=0时的线性表为空表。}ADTList{数据对象:D={ai|ai∈ElemSet,i=1,2,...,n,n≥0}01{设线性表为(a1,a2,...,ai,...,an),称i为ai在线性表中的位序。}R1={ai-1,ai|ai-1,ai∈D,i=2,...,n}02

结构初始化操作01结构销毁操作02引用型操作03加工型操作04}ADTList05基本操作:

操作结果:初始化操作InitList(L)构造一个空的线性表L。

结构销毁操作DestroyList(L)初始条件:操作结果:线性表L已存在。销毁线性表L。

ListEmpty(L)1ListLength(L)2PriorElem(L,cur_e,pre_e)3NextElem(L,cur_e,next_e)4GetElem(L,i,e)5LocateElem(L,e,compare())6ListTraverse(L,visit())7引用型操作:

0102030405ListEmpty(L)初始条件:操作结果:(线性表判空)线性表L已存在。若L为空表,则返回TRUE,否则FALSE。

初始条件:操作结果:1返回L中元素个数。3线性表L已存在。2(求线性表的长度)4ListLength(L)

PriorElem(L,cur_e,pre_e)(求数据元素的前驱)初始条件:操作结果:线性表L已存在。若cur_e是L的元素,但不是第一个,则用pre_e返回它的前驱,否则操作失败,pre_e无定义。

NextElem(L,cur_e,next_e)初始条件:操作结果:若cur_e是L的元素,但不是最后一个,则用next_e返回它的后继,否则操作失败,next_e无定义。线性表L已存在。(求数据元素的后继)

GetElem(L,i,e)初始条件:操作结果:线性表L已存在,且1≤i≤LengthList(L)。用e返回L中第i个元素的值。(求线性表中某个数据元素)

LocateElem(L,e,compare())初始条件:线性表L已存在,compare()是数据元素的判定函数。操作结果:返回L中第1个与e满足关系compare()的数据元素的位序。若这样的数据元素不存在,则返回值为0。01(求满足判定函数的数据元素的位序)02

ListTraverse(L,visit())初始条件:01操作结果:02线性表L已存在,03Visit()为某个访问函数。04依次对L的每个元素调用05函数visit()

文档评论(0)

wangwumei1975 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档