- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
*数据结构
第二章线性表重庆一中葛静* 数据元素之间满足线性关系的表称为线性表,是一种最基本、最简单的数据结构类型。本章讨论线性表的逻辑和存储结构、相关算法的实现以及线性表应用举例。2.1线性表的定义及基本操作2.1.1定义:线性表(LinearList)是若干数据元素的一个线性序列,记为: L=(a1,????ai-1aiai+1??????an) 其中:L为表名,ai(1≤i≤n)为数据元素;n为表长,n0时,L为非空表,否则为空表。2.1.2线性表的逻辑结构和特征 线性表L可用二元组形式描述:L=(D,R) 数据元素集合:D={ai|ai∈datatype,i=1,2,?????????n,n≥0} 关系集合:R={ai,ai+1|ai,ai+1∈D,1≤i≤n-1} 表长n=0时,L为空表;关系符ai,ai+1在这里称为有序对,表示任意相邻的两个元素之间的一种先后次序关系,称ai是ai+1的直接前驱,ai+1是ai的直接后继,当表长n≤1时,关系集R为空集。例2-1线性表的例子*L1=(A,B,……,Z)元素为字符;L2=(6,7,……,105)元素为整数; 学生记录表: 线性表的特征:对非空表,a1是表头,无前驱;an是表尾,无后继;其它的每个元素ai有且仅有一个直接前驱(ai-1)和一个直接后继(ai+1)。2.1.3线性表的抽象数据类型表示设线性表L=(a1,a2,……,an),对L的抽象数据类型表示:学号姓名性别年龄班级-------J99001丁兰女19计99-------J99002王林男20计99-------------------------------------------------J99032马红女18计99-------a1a2....a32线性表的抽象数据类型表示*基本操作集:P(置表空、求表长、插入、删除、查找一个元素等)ADTList{数据元素集:D={ai|ai∈datatype,i=1,2,……n,n≥0}数据关系集:R={ai,ai+1|ai,ai+1∈D,1≤i≤n-1} 2.2.1顺序表* 若将线性表L=(a0,a1,……,an-1)中的各元素依次存储于计算机一片连续的存储空间,如图2.2所示。这种机内表示为线性表的顺序存储结构(顺序表)。地址:b:占d个单元b+d: 设Loc(ai)为ai的地址,Loc(a1)=b,则:… Loc(a2)=b+1*db+(i-1)*d: ........ … Loc(ai)=b+(i-1)*db+(n-1)*d: 图2.2 顺序表的特点:(1)逻辑上相邻的元素ai,ai+1,存储位置也是相邻的;(2)对ai的存取为随机存取或按地址存取。(3)存储密度高。存储密度D=(数据结构中元素所占存储空间)/(整个数据结构所占空间)。 顺序表的不足:对表的插入和删除等运算的时间复杂度较差。a1a2…ai…an线性表的顺序存储*Typelist=recordvec:array[1..m0]ofelemtype;len:integer;End;VarL:list;1、setnull(L)L.len:=0;操作结果:构造一个空的线性表L。2、length(L)return(L.Len);初始条件:线性表L存在。操作结果:返回L中的元素个数。3、向线性表的第i个元素插入一个元素步骤:(1)检查存储空间是否已经满,若满,则“溢出”。(2)检查i是否超范围1=i=n+1,若是,则“超出范围”(3)将线性表中第i个元素和后面所有元素均后移一位。(4)将新元素写在第i个位置上。(5)线性表长度加1
您可能关注的文档
最近下载
- 浙江师范大学《高等数学》D11_2对坐标曲线积分.ppt VIP
- 2023年高级经济师《知识产权》(真题卷).docx VIP
- YD∕T 3436.4-2019 架空通信线路配件 第4部分:抱箍类 、光缆预留支架.pdf
- 兰花-洋兰(讲解课件).ppt VIP
- 城市轨道交通管理软件:Trainsim二次开发_(1).城市轨道交通管理软件Trainsim基础.docx
- Join in 五年级下学期英语1-6单元习题(同步练习)(word版含答案).doc
- 信息技术在小学课堂中的应用教学研究课题报告.docx
- 3-巧手种大蒜(课件)---人民版一年级下册劳动.pptx
- 检测中心建设项目可行性研究报告立项申请报告模板.docx
- 现场管理培训课件(PPT 46页).pptx VIP
文档评论(0)