线性表的链式存储结构与顺序存储结构
⑴ 线性存储结构就是顺序存储结构吗线性表是线性存储结构吗
不是,他们的关系可以如图所示。线性表包括顺序存储结构和链式存储结构。
拓展资料:
线性表的划分是从数据的逻辑结构上进行的。线性指的是在数据的逻辑结构上是线性的。即在数据元素的非空有限集中
(1)存在唯一的一个被称作“第一个”的数据元素,(2)存在唯一的一个被称作“最后一个”的数据元素,(3)除第一个外,集合中的每个数据元素均只有一个前继元素,(4)除最后一个外,集合中的每个数据元素均只有一个后继元素。
那么对于线性表,从存储结构上分,可以有顺序存储结构和链式存储结构。顺序存储结构包括顺序表、顺序队列和顺序栈;链式存储结构包括链表、链队列和链栈。
⑵ 线性表的顺序结构和链表结构各有什么优缺点
顺序表特点是利用物理上的相邻关系表达出逻辑上的前驱和后继关系,要求用连续的存储单元顺序存储线性表中各元素,对顺序表进行插入和删除时需要通过移动数据元素来实现线性表的逻辑上的相邻关系,从而影响其运行效率。
⑶ 线性表顺序存储结构和链式存储结构的定义,以及各自的有缺点,分别适合于哪些应用
定义
顺序存储结构就是用一组地址连续的存储单元依次存储该线性表中的各个元素。由于表中各个元素具有相同的属性,所以占用的存储空间相同。
线性表按链式存储时,每个数据元素 (结点)的存储包括数据区和指针区两个部分。数据区存放结点本身的数据,指针区存放其后继元素的地址只要知道该线性表的起始地址表中的各个元素就可通过其间的链接关系逐步找到
优缺点
顺序存储需要开辟一个定长的空间,读写速度快,缺点不可扩充容量(如果要扩充需要开辟一个新的足够大的空间把原来的数据重写进去)
链式存储无需担心容量问题,读写速度相对慢些,由于要存储下一个数据的地址所以需要的存储空间比顺序存储大。
⑷ 线性表的链式存储结构与顺序存储结构比较有何特点这两种结构分别适合在什么情况下使用
链式存储结构适用于数据更改(添加,删除)较多的情况。
而顺序存储结构更适用于数据查询(改变某位置上数据的值,查找某位置上的值),各有各的优点,他们的缺点是:
链式结构上查找(查找第几个位置上的值)花的系统开销(主要是时间上的开销)要比顺序结构上的多,
而顺序结构上要删除某位置上的值或者在某位置添加数据时花的系统开销要比在链式上多。
所以在选用存储结构之前就要先考虑到以后对数据的操作主要是查询多还是更改多!
⑸ 线性表两种 存储结构各自的优缺点有哪些
线性表的链式存储结构:
优点:
插入和删除不需要移动插入时只需要对插入位置后的一个元素进行操作,不需要大量的移动元素。空间有效利用高。
缺点:
大量访问操作时不如顺序存储结构,因为每次都需要从头开始遍历整个线性表直到找到相应的元素为止。
线性表的顺序存储结构:
优点:
可随机存取表中任一元素。因为有下标可以操作可以快速的定位到指定位置的元素,但是不知道位置的话也需要顺序遍历。
缺点:
插入或删除操作时,需大量移动元素。合适在很少进行插入和删除运算的情况下。
(5)线性表的链式存储结构与顺序存储结构扩展阅读:
线性表的特征
集合中必存在唯一的一个“第一元素”。
集合中必存在唯一的一个 “最后元素” 。
除最后一个元素之外,均有唯一的后继(后件)。
除第一个元素之外,均有唯一的前驱(前件)。
线性表的基本操作
MakeEmpty(L) 这是一个将L变为空表的方法。
Length(L) 返回表L的长度,即表中元素个数。
Get(L,i) 这是一个函数,函数值为L中位置i处的元素(1≤i≤n)。
Prior(L,i) 取i的前驱元素。
Next(L,i) 取i的后继元素。
Locate(L,x) 这是一个函数,函数值为元素x在L中的位置。
Insert(L,i,x)在表L的位置i处插入元素x,将原占据位置i的元素及后面的元素都向后推一个位置。
Delete(L,p) 从表L中删除位置p处的元素。
IsEmpty(L) 如果表L为空表(长度为0)则返回true,否则返回false。
Clear(L)清除所有元素。
Init(L)同第一个,初始化线性表为空。
Traverse(L)遍历输出所有元素。
Find(L,x)查找并返回元素。
Update(L,x)修改元素。
Sort(L)对所有元素重新按给定的条件排序。
strstr(string1,string2)用于字符数组的求string1中出现string2的首地址。
参考资料来源:网络-线性表
⑹ 叙述线性表两种存储结构各自的主要特点
两种存储结构各自的主要特点
1、顺序存储结构:存储单元地址连续,它以“物理位置相邻”来表示线性表中数据元素间的逻辑关系,可随机存取表中任一元素。
2、链式存储结构:存储单元地址为任意一组,它的存储单元可以是连续的,也可以是不连续的。
在表示数据元素之间的逻辑关系时,除了存储其本身的信息之外,还需存储一个指示其直接后继的信息(即直接后继的存储位置),这两部分信息组成数据元素的存储映像,称为结点(node)。
(6)线性表的链式存储结构与顺序存储结构扩展阅读:
线性表结构特点
1、均匀性
虽然不同数据表的数据元素可以是各种各样的,但对于同一线性表的各数据元素必定具有相同的数据类型和长度。
2、有序性
各数据元素在线性表中的位置只取决于它们的序号,数据元素之前的相对位置是线性的,即存在唯一的“第一个“和“最后一个”的数据元素,除了第一个和最后一个外,其它元素前面均只有一个数据元素(直接前驱)和后面均只有一个数据元素(直接后继)。
⑺ 线性表的链式存储结构和顺序存储结构的区别
顺序存储结构就是用一组地址连续的存储单元依次存储该线性表中的各个元素.由于表中各个元素具有相同的属性,所以占用的存储空间相同.因此,在内存中可以通过地址计算直接存取线性表中的任一元素.这种结构的特点是逻辑上相邻的元素物理上也相邻.用顺序结构存储的线性表称作顺序表.
线性表按链式存储时,每个数据元素
(结点)的存储包括数据区和指针区两个部分.数据区存放结点本身的数据,指针区存放其后继元素的地址
(没有后继元素时设置为空字符(Null)..只要知道该线性表的起始地址
(记录在头指针中),表中的各个元素就可通过其间的链接关系逐步找到
⑻ 线性表的顺序存储结构和线性表的链式存储结构分别是
您好,
这道题的答案是B
首先解题需要了解线性表的定义,顺序存储结构和链式存储结构的区别,他们分别如下:
资料扩展
定义:线性表(Linear List)是由n(n≥0)个数据元素(结点)a[0],a[1],a[2]…,a[n-1]组成的有限序列。
对于线性表而言,有如下几点需要明确:
①数据元素的个数n定义为表的长度 = "list".length() ("list".length() = 0(表里没有一个元素)时称为空表)
②将非空的线性表(n>=0)记作:(a[0],a[1],a[2],…,a[n-1])
③数据元素a[i](0≤i≤n-1)只是个抽象符号,其具体含义在不同情况下可以不同,一个数据元素可以由若干个数据项组成。数据元素称为记录,含有大量记录的线性表又称为文件。这种结构具有下列特点:存在一个唯一的没有前驱的(头)数据元素;存在一个唯一的没有后继的(尾)数据元素;此外,每一个数据元素均有一个直接前驱和一个直接后继数据元素。
综上所述,这道题目选择B项。