数据的逻辑结构可分为
-线性结构
-线性表
-栈和队列
-串
-数组与广义表
-非线性结构
-树
-图
线性表(线性结构)
线性结构是最简单,最直接的数据关系,数据元素之间一一对应
线性表的定义
-线性表是由N个类型相同的数据元素组成的有序序列
记做:(a1,a2,a3,a4,…an),N是线性表长度
n=0称为空表
n>0,除第一个元素无直接前驱,最后一个元素无直接后继外,其余的每个数据元素只有一个直接前躯和一个直接后继,数据元素间具有一对一的关系
0-0-0-0-0 逻辑关系图大概长这个样子
线性表的特点:
-同一性:线性表由同类数据元素组成,线性表内的每个元素必须属于同一数据对象
-有穷性:线性表由有限个数据元素组成,表长度就是表中数据元素的个数
-有序性:线性表中相邻数据元素之间存在着序偶关系,就是那个之前说一对一的那个前驱后继之类的啦
线性表的基本运算包括
-初始化
-销毁
-置空
-判空
-求长度
-查找
-存取
-插入
-删除
抽象数据类型定义了相应模型上的基本运算集,例如整型的运算为加减乘除等
抽象数据类型的作用:一经定义可多次使用,适用于进行相关的各种需求
线性表的顺序存储
顺序存储结构的定义:
-用一组地址连续的存储单元依次存储线性表中的各个元素
-节点顺序存,关系线性化
-逻辑上相邻,存储也相邻
顺序存储结构的地址计算,如图所示:

什么是类型,什么是变量?
-类型是一种规格的定义,变量是一种空间的定义。
-例如将一种数据类型的元素赋值给一个变量
线性表的基本运算:
-查找操作
-按序号查找:正/反向递增/减序号
-按内容查找:要求查找线性表L中与给定值e相等的数据元素,就只能一个挨一个的查找比对
-插入操作
-先定位,找到需要插入的坐标第i个元素
-再移动,将需要插入的坐标后的元素全部后移,从最后的元素开始移
-再插入,插入元素到坐标
-插入操作的性能耗费时间主要在移动的操作次数上
-插入操作的性能耗费公示为n(n+1)/2,插入操作需要的平均时间是n/2
-删除操作
-删除操作和插入操作基本相同,只不过是将删除元素的坐标后的元素向前移动
-删除操作需要移动的次数(消耗的时间)为n(n-1)/2 ,删除操作需要的平均时间是n-1/2
-顺序表合并算法
线性表顺序存储结构优缺点:
-优点
-无需为表结点间的逻辑关系而增加额外的存储空间
-可方便地随机存取查找表中的任一元素
-缺点
-插入删除效率低,除表尾位之外,在其他位置插入删除都必须移动大量元素,他的平均移动次数,是表长度的一半
-由于顺序表要求占用连续的存储空间,存储分配只能预先进行静态分配,因此当表长变化较大时,难以确定合适的存储规模
本文介绍了线性表这一基本数据结构,包括其定义、特点和基本运算。线性表是由相同类型数据元素组成的有序序列,具备同一性、有穷性和有序性。顺序存储结构是线性表的一种实现方式,它将元素存储在地址连续的存储单元中,便于计算和操作。此外,文章还提到了抽象数据类型在定义线性表运算集中的作用。
161

被折叠的 条评论
为什么被折叠?



