- 4
- 0
- 约8.32千字
- 约 34页
- 2018-01-28 发布于浙江
- 举报
第02章 线性表 数据结构 (第二版) 教学课件
第二章 线性表 2.1 线性表及其基本运算 一、线性表(linear_list) 线性表是n个数据元素的有限序列,记为: L=(a1,a2, …,an) 2.1 线性表及其基本运算 线性表是最常用且最简单的一种数据结构, 它的形式化定义为: linear_list=(D,R) 其中,D={ai| ai ∈DO,i=1,2,...,n,n=0} R={N},N={ai-1, ai|ai-1, ai∈D0,i=2,3,...,n} D0为某个数据对象, N是一个序偶的集合,它表示线性表中数据元素之间的相邻关系。 2.1 线性表及其基本运算 二. 基本运算 INITIATE(L) 初始化操作 设定一个空的线性表L LENGTH(L) 求长度函数 值为L中数 据元素的个数 GET(L,i) 取元素函数 1=i=LENGTH(L)时返回L中第i个数据元素,否则为空元素NULL。 i称为该数据元素在L中的位序 PRIOR(L,elm) 求前驱函数 elm为L中的一个数据元素,若它的位序大于1,则函数值为elm前驱,否则为NULL NEXT(L,elm) 求后继函数 若elm的位序小于表长, 则函数值为elm的后继,否则为NULL 2.1 线性表及其基本运算 LOCATE(L,x) 定位函数 给定值x,若x不在表中, 则返回0,否则,返回x在表中第一次出现时的位序 INSERTE(L, i , b)前插操作 在第i个元素之前插入新元素b,i 的取值范围为:1=i=n+1;i =n+1表示在表尾插入, n为表长 DELETE(L,i) 删除操作 删除线性表L中的第i个元素, 1=i=n EMPTY(L) 判空表函数 若L为空表,则返回布尔值“true”,否则返回布尔值“false” CLEAR(L) 表置空操作 将L置为空表 2.1 线性表及其基本运算 例2-1 求两个集合的并,即A=A∪B 分析:设A、B分别由两个线性表LA和LB表示, 要求: 将LB中存在而LA中不存在的DE插入到表LA中。 2.1 线性表及其基本运算 形式化算法描述(类PASCAL): PROC union(VAR LA:Linear_list; LB:Linear_list); {将所有在LB中存在而LA中不存在的DE插入到LA中去} n:=LENGTH(LA); {确定线性表LA的长度} FOR i:=1 TO LENGTH(LB) DO [ x:=GET(LB,i); {取LB中第i个数据元素} k:=LOCATE(LA,x); {在LA中进行搜索} IF k=0 THEN [ INSERT(LA,n+1,x);{在LA表尾插入} n:=n+1 {表长加1} ] ] ENDP; {union} 2.2 线性表的顺序存储结构 一、顺序存储结构 用一组地址连续的存储单元依次存储线性表的元素。设线性表的每个元素占用k个存储单元,则第i个元素ai 的存储位置为:Loc(ai)=Loc(a1)+(i-1)*k 其中,Loc(ai)为线性表的起址。 2.2 线性表的顺序存储结构 线性表顺序存储结构的定义为: CONST maxlen=线性表可能达到的最大长度; TYPE sqlisttp=RECORD elem:ARRAY[1..maxlen] OF elemtp; last:0..maxlen END 在上述描述中,线性表的顺序存储结构是一个记录型的结构。 其中,数据域 elem描述了线性表中的DE占用的数组空间, 数组的第i个分量为线性表中第i 个DE的存储映象; 数据域 last指示最后一个DE在数组空间中的位置,也是表长。 2.2 线性表的顺序存储结构 二. 插入和删除操作 1. 插入运算 INSERT(L, i, b) 插入前:L=(a1, ... , ai-1, ai, ... ,an) 插入后:L=(a1, ... , ai-1, b, ai, ... ,an ) 2.2 线性表的顺序存储结构 PROC ins_sqlist(VAR v:sqlisttp;i:integer;b:elemtp); {在顺序存储结构的线性表v中第i个DE
您可能关注的文档
- 第 6 章模拟光纤通信系统 光纤通信 教学课件.ppt
- 第 7 章 模拟信号的数字传输 通信原理教学课件.ppt
- 第 6章电动机及其控制 地质测井资料.ppt
- 第 7 章 单播路由协议 高级计算机网络 教学课件.ppt
- 第 7 章 单播路由协议3 高级计算机网络 教学课件.ppt
- 第 7 章 光纤通信新技术 光纤通信 教学课件.ppt
- 第 7 章 网页表单的编辑.ppt
- 第 7 章 存储器系统 微型计算机原理与应用 教学课件.ppt
- 第 7 章 运输层 计算机网络课件.ppt
- 第 6章 PC网络系统 可编程序控制器原理及应用 教学课件.ppt
- 伟明环保-市场前景及投资研究报告-境内业务稳健运行,印尼市场贡献边际增量.pdf
- 桂东县法院系统招聘考试真题2025.pdf
- 贵州省黔南布依族2026年中考三模物理试题及答案.pdf
- 贵州省黔南州2026年中考语文二模试卷附答案.pdf
- 贵州省铜仁市2026年中考语文二模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套完整答案详解.docx
- 贵州省毕节市2026年中考语文一模试卷附答案.pdf
- 贵州省贵阳市南明区2026年中考语文一模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套参考答案详解.docx
- 贵州省贵阳市白云区2026年中考二模物理试题附答案.pdf
最近下载
- 2026《隧道贯通误差预计计算案例》4000字.docx
- 2022-2023学年北京市丰台区高二(下)期末数学试卷(附答案详解).docx VIP
- 5m盐酸溶液的配制 -回复.pdf VIP
- 小学低段音乐课堂管理方法的研究课题资料(包含申请表、开题报告、实施方案、结题报告等).pdf VIP
- 2026年新疆工程学院辅导员招聘备考题库最新.docx VIP
- 2026年新疆财经大学辅导员招聘备考题库必考题.docx VIP
- 2026年新疆农业大学辅导员招聘备考题库附答案.docx VIP
- 现代金属凝固技术课件(9056KB).ppt VIP
- 现代材料凝固技术.ppt VIP
- TG5焚烧炉OG200C说明书翻译20120222.pdf
原创力文档

文档评论(0)