- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章 线性表 本章主要内容 2.1 线性表的定义和基本操作 2.2 线性表的顺序存储结构 2.3 线性表的链式存储结构 2.4 线性表的应用举例 2.1 线性表的定义和基本操作 线性表的定义 线性表是由n(n≥0)个类型相同的数据元素组成的有限序列。 L=( a1, a2,...,ai-1,ai,ai+1,...,an);其中:L为表名,习惯用大写书写;ai为该线性表的数据元素,习惯用小写书写; 线性表中数据元素的个数被称为线性表的长度,当n=0时,称为空线性表。 线性表特点 特点 除第一个和最后一个元素外,其他元素都存在唯一的前驱、后继关系 举例 La=(34,89,765,12,90,-34,22) 数据元素类型为int。 Ls=(?Hello?,?World?, ?China?, ?Welcome?) 数据元素类型为string。 举例 Lb=(book1,book2,...,book100) 数据元素类型为下列所示的结构类型: struct bookinfo{ int No; //图书编号 char *name; //图书名称 char *auther; //作者名称 ...; } 在现实中,这种类型的数据结构很多很多,如学生档案学籍系统、图书管理系统、仓库管理系统、设备管理系统等 线性表的基本操作 1. 初始化线性表L InitList(L) 2. 销毁线性表L DestoryList(L) 3. 清空线性表L ClearList(L) 4. 求线性表L的长度 ListLength(L) 5. 判断线性表L是否为空 IsEmpty(L) 6. 获取线性表L中的某个数据元素 内容GetElem(L,i,e) 7. 检索值为e的数据元素 LocateELem(L,e) 线性表的基本操作 8. 返回线性表L中e的直接前驱元素 PriorElem(L,e) 9. 返回线性表L中e的直接后继 元素NextElem(L,e) 10.在线性表L中插入一个数据 元素ListInsert(L,i,e) 11. 删除线性表L中第i个数据 元素ListDelete(L,i,e) 注意:这些操作都是定义在逻辑层面上 2.2 线性表的顺序存储结构 顺序表元素在内存的存储地址 相邻两个数据元素的存储位置计算公式 LOC(ai+1)=LOC(ai)+L 线性表中任意一个数据元素的存储位置的计算 公式为:LOC(ai+1)=LOC(a1)+(i-1)*L 顺序存储结构的特点 逻辑与物理一致: 逻辑上相邻,物理上也相邻——利用数据元素的存储位置表示线性表中相邻数据元素之间的前后关系 随机存取: 可以利用上述给出的数学公式,快速地计算出任何一个数据元素的存储地址 顺序存储结构的类型定义 在C语言中,实现线性表的顺序存储结构的类型定义如下 #define MAXSIZE 100 typedef struct node { DataType data[MAXSIZE]; int length; } SeqList, *PseqList; 定义一个顺序表:SeqList L; 初始化一个线性表 PSeqList是指向SeqList 类型变量的指针类型; 定义:PSeqlist PL ; 则如下初始化PL=( PSeqList )malloc(sizeof(SeqList)) 或者 PL=L 典型操作的算法实现 1. 初始化线性表L PSeqList Init_SeqList(void ) { /*创建一顺序表,入口参数无,返回一个指向顺序表的指针,指针值为零表示分配空间失败*/ PSeqList PL; PL=( PSeqList )malloc(sizeof(SeqList)); if (PL) /*若SL=0表示分配失败*/ PL - length =0; retur
您可能关注的文档
- 苏北四市2016届高三第一次模拟考试政治试卷资料.doc
- 苏格兰女王的悲剧资料.ppt
- 苏航、韦莎——小世界现象及其应用资料.ppt
- 苏红的画课件1资料.ppt
- 苏教版.二年级下册全册一课一练资料.doc
- 苏教版。说名道姓资料.ppt
- 苏教版__六年级_商品打折问题资料.ppt
- 苏教版_二年级下册_语文_识字三_课件_资料.ppt
- 苏教版_三年级下册语文_练习2资料.ppt
- 苏教版_四年级下__燕子资料.ppt
- 《2025年养老社区适老化无障碍设施建设人才培养策略》.docx
- 《2025年新能源车环保内饰材料抗过敏与健康安全标准》.docx
- 《2025年充电桩网络发展:城际快充站运营成本控制与收益模式》.docx
- 2026国家管网集团高校毕业生招聘笔试模拟试题(浓缩500题)附参考答案详解(轻巧夺冠).docx
- 《2025年老年护理培训与护工收入水平提升研究》.docx
- 2025年检测机器人行业创新技术及市场应用报告.docx
- 2025年柬埔寨语培训机构教学品牌创新塑造报告.docx
- 2026国家管网集团高校毕业生招聘笔试模拟试题(浓缩500题)附参考答案详解(轻巧夺冠).docx
- 《2025年家用血氧仪产品差异化与健康管理设备行业趋势》.docx
- 2025年婚庆服务行业高端市场拓展策略研究报告.docx
最近下载
- 《童年》思维导图.pdf VIP
- Part 1-2 Unit 3 Shopping 课件-中职高一英语(高教版基础模块1).pptx
- 一人有限责任公司章程(完整版).pdf VIP
- 火力发电工程建设标准强制性条文执行表格-汽机分册精品.doc VIP
- Part 6 Unit 3 Shopping 课件-中职高一英语(高教版基础模块1).pptx
- 中医专科护士进修汇报.pptx VIP
- 基于PLC系统的电梯控制系统设计_毕业设计(论文 ) .pdf VIP
- 全国版本的2025年高中英语课程标准.pptx VIP
- 变频器、步进与伺服系统应用技术 课件全套 向晓汉 第1--7章 变频器基础知识---SINAMICS V90伺服驱动系统的速度、位置和扭矩控制及应用.pptx
- 2025版《义务教育道德与法治新课程标准》.docx VIP
原创力文档


文档评论(0)