1 / 32
文档名称:

(Java版)数据结构与算法第2章.ppt

格式:ppt   页数:32
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

(Java版)数据结构与算法第2章.ppt

上传人:1259812044 2016/8/2 文件大小:0 KB

下载得到文件列表

(Java版)数据结构与算法第2章.ppt

文档介绍

文档介绍:第第2 2章章线性表线性表 线性表类型的定义 线性表的顺序表示和实现 线性表的链式存储结构 单向链表 单链表的基本运算 循环链表 双链表 链表应用举例 顺序表和链表的比较 线性表类型的定义线性表类型的定义?线性表是 n个数据元素的有限序列。其一般描述为: ? A= ( a1 , a2 ,…… an ) ?其中 A称为线性表的名称, 每个 ai(n≥i≥1)称为线性表的数据元素,具体 n的值含义则称为线性表中包含有数据元素的个数,也称为线性表的长度;当 n的值等于 0时,表示该线性表是空表。每个数据元素的含义在不同情况下各不相同,它们可能是一个字母、一个数字、也可以是一条记录等。一般情况下,在线性表中每个 ai的描述的是一组相同属性的数据。 线性表类型的定义线性表类型的定义?线性表的离散定义是: B=<A , R> ,其中 A包含 n个结点( a1 , a2 …… an ), R只包含一个关系。 R={ ( ai-1 , ai) | I=1 ,2,…… n},线性表中包含的数据元素个数为线性表的长度。?一个数据元素通常包含多个数据项,此时每个数据元素称为记录,含有大量的记录的线性表称为文件。?在稍微复杂的线性表中,一个数据元素可以由若干个数据项组成。?线性表是一个比较灵活的数据结构,它的长度根据需要增长或缩短,也可以对线性表的数据元素进行不同的操作(如访问数据元素、插入、删除数据元素等)。 线性表类型的定义线性表类型的定义?使用抽象数据类型 ADT 定义线性表如下: ? ADT list{ ?数据对象: D={ ai | ai∈元素集合, i=1 , 2,…… n,n≥ 0} ?数据关系: R= { 〈 ai-1 , ai〉 | ai-1 , ai∈元素集合, i=1 ,2,…… n} ?基本操作: ?{将以上对线性表的操作搬下来,每个函数注明输入输出}?}ADT list 线性表的顺序表示和实现线性表的顺序表示和实现?线性表的存储结构分为顺序存储和非顺序存储。其中顺序存储也称为向量存储或一维数组存储。?(1)顺序表–线性表的顺序存储,也称为向量存储,又可以说是一维数组存储。线性表中结点存放的物理顺序与逻辑顺序完全一致,它叫向量存储(一般指一维数组存储), 与此同时对应 A= ( a1 , a2 ,... an )线性表而言。–实际上,数据的存储逻辑位置由数组的下标决定。所以相邻的元素之间地址的计算公式为(假设每个数据元素占有 c个存储单元): – LOC ( ai+1 ) =LOC ( ai) + c 线性表的顺序表示和实现线性表的顺序表示和实现?(1)顺序表–对线性表的所有数据元素,假设已知第一个数据元素 a1 的地址为 d1 ,每个结点占有 c个存储单元, 则第 i个数据元素 ai的地址为: – di =d1+ ( i-1 )*c–线性表的第一个数据元素的位置通常称做起始位置或基地址。–线性表的这种机内表示称做线性表的顺序存储结构或顺序映象( Sequential mapping ),使用这种存储结构存储的线性表又称做顺序表。其特点是,表中相邻的元素之间具有相邻的存储位置。–在使用一维数组时,数组的下标起始位置根据给定的问题确定,或者根据实际的高级语言的规定确定。 线性表的顺序表示和实现线性表的顺序表示和实现?(1)顺序表–顺序分配的线性表的可以直接使用一维数组描述为: – type arraylist []; //type 的类型根据实际需要确定// –通常用在数组的元素个数不是很多且可以对数组元素“枚举”的情况下。也可以使用符合类型数组的动态进行动态定义。– type arrayname []; –该代码只是对应用数组的声明,还没有对该数组分配空间,因此不能访问数组。只有对数组进行初始化并申请内存资源后,才能够对数组中元素进行使用和访问。– arrayname = new type[arraysize ]; –其作用是给名称为 arrayname 的数组分配 arraysize 个类型为 type 大小的空间;其中 arraysize 表示数组的长度,它可以是整型的常量和变量;如果 arraysize 是常量,则分配固定大小的空间,如果是变量,则表示根据参数动态分配数组的空间。 线性表的顺序表示和实现线性表的顺序表示和实现?(2)顺序表基本运算的实现?线性表的顺序存储的结构,容易实现线性表的某些操作,如随机存取第 i个数据元素等,但是在插入或删除数据元素时则是比较

最近更新

2026年C语言题库及答案(网校专用) 13页

2026年国企廉政考试题库及答案参考 14页

2026年天津廉政知识测试题(各地真题) 14页

2025广东深圳大学AI音乐研究院诚聘副研究员考.. 45页

2025重庆大学高端装备机械传动全国重点实验室.. 45页

2026年c语言基础知识试题及答案(夺冠) 13页

2026年c语言知识试题新版 13页

2026年会计专业技术资格考试题库200道含完整答.. 88页

2026年兰州科技职业学院单招综合素质考试题库.. 46页

2025年下半年四川南充市营山县考核招聘事业单.. 49页

2026年各工种岗位作业安全考核试题附答案(模.. 40页

2025年望城县幼儿园教师招教考试备考题库附答.. 30页

2025年浙江金融职业学院马克思主义基本原理概.. 13页

2025广东深圳市龙岗区第五人民医院第五批招聘.. 49页

2026年安徽省淮北市单招职业倾向性测试题库附.. 44页

2025河南漯河市农业科学院人才引进7人备考题库.. 51页

2026年山西国际商务职业学院单招职业倾向性测.. 45页

2025贵州遵义市公安局汇川分局公开招聘警务辅.. 36页

2026年江西交通职业技术学院单招职业倾向性考.. 37页

2025年新疆考试录用公务员《公安专业科目》真.. 30页

2025年安徽邮电职业技术学院单招职业技能测试.. 66页

2024年南京信息职业技术学院单招职业技能测试.. 78页

CFG群桩基础土方开挖施工方案 6页

全国大学生智能车大赛作品-智能循迹小车技术文.. 31页

中药配伍禁忌表 6页

《凌志轩四柱命理高级培训班教材》 72页

心思的战场-乔依丝迈尔 50页