线性表的存储结构优于链式存储结构
‘壹’ 线性表链式存储结构的优点和缺点有什么
一、线性表链式存储结构的优点:
1、均匀性:虽然不同数据表的数据元素可以是各种各样的,但对于同一线性表的各数据元素必定具有相同的数据类型和长度。对于线性链表,可以从头指针开始,沿各结点的指针扫描到链表中的所有结点。
2、有序性:各数据元素在线性表中的位置只取决于它们的序号,数据元素之前的相对位置是线性的,即存在唯一的第一个和最后一个的数据元素,除了第一个和最后一个外,其它元素前面均只有一个数据元素(直接前驱)和后面均只有一个数据元素(直接后继)。
二、线性表链式存储结构的缺点:
线性表链式存储结构不要求逻辑上相邻的元素在物理位置上是相邻,因此,它没有顺序存储结构所具有的弱点,但也同时失去了顺序表可随机存取的优点。
(1)线性表的存储结构优于链式存储结构扩展阅读:
线性表链式存储结构的其他介绍:
一般在计算机的硬盘中,文件都是链式存储的。我们知道,多个扇区组成一个簇,簇是计算机存储数据的基本单位。
而一个文件是存储在多个在空间上也许并不相连的簇中的,这就是链式存储。但是为了能够读取出这个文件,计算机会在该文件第一部分的尾部写上第二部分所在的簇号。
另一部分的尾部又写上第三部分,以此类推,最后一部分写上一段代码,表示这是该文件的最后一部分。值得一提的是,高簇号在后。(如代码所示的1234实为簇3412)文件所占簇可认为是随机分配的。
‘贰’ 线性表两种 存储结构各自的优缺点有哪些
线性表的链式存储结构:
优点:
插入和删除不需要移动插入时只需要对插入位置后的一个元素进行操作,不需要大量的移动元素。空间有效利用高。
缺点:
大量访问操作时不如顺序存储结构,因为每次都需要从头开始遍历整个线性表直到找到相应的元素为止。
线性表的顺序存储结构:
优点:
可随机存取表中任一元素。因为有下标可以操作可以快速的定位到指定位置的元素,但是不知道位置的话也需要顺序遍历。
缺点:
插入或删除操作时,需大量移动元素。合适在很少进行插入和删除运算的情况下。
(2)线性表的存储结构优于链式存储结构扩展阅读:
线性表的特征
集合中必存在唯一的一个“第一元素”。
集合中必存在唯一的一个 “最后元素” 。
除最后一个元素之外,均有唯一的后继(后件)。
除第一个元素之外,均有唯一的前驱(前件)。
线性表的基本操作
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的首地址。
参考资料来源:网络-线性表
‘叁’ 九、 线性表的链式存储结构与顺序存储结构比较有何特点这两种结构分别适合在什么情况下使用
看名字就差不多了吧
顺序存储结构就是用一组地址连续的存储单元依次存储该线性表中的各个元素。由于表中各个元素具有相同的属性,所以占用的存储空间相同。因此,在内存中可以通过地址计算直接存取线性表中的任一元素。这种结构的特点是逻辑上相邻的元素物理上也相邻。用顺序结构存储的线性表称作顺序表。
线性表按链式存储时,每个数据元素 (结点)的存储包括数据区和指针区两个部分。数据区存放结点本身的数据,指针区存放其后继元素的地址 (没有后继元素时设置为空字符(Null).。只要知道该线性表的起始地址 (记录在头指针中),表中的各个元素就可通过其间的链接关系逐步找到
‘肆’ 线性表的顺序存储结构优于链式存储结构么
不一样,线性存储每个元素只要存元素的内容,链式存储还需要多一块区域来存储相邻节点的地址
‘伍’ “线性表的顺序存储表优于链式存储表示”这句话对吗。
“线性表的顺序存储表优于链式存储表示”这句话是不正确的,以偏盖全。
具体解释为:
顺序存储需要开辟一个定长的空间,读写速度快,缺点不可扩充容量(如果要扩充需要开辟一个新的足够大的空间把原来的数据重写进去)
链式存储无需担心容量问题,读写速度相对慢些,由于要存储下一个数据的地址所以需要的存储空间比顺序存储大。
综上所述,如果元素个数已知,且插入删除较少的可以使用顺序结构,而对于频繁有插入删除操作,元素个数未知的,最好使用链式结构,编程时可结合要处理的数据的特点设计数据结构的。
‘陆’ 线性表顺序存储结构和链式存储结构的优缺点(JAVA)
从数据结构的角度来说顺序结构的存储空间固定,可扩展性差,但是如果数据元素个数已知,较链式存储节省空间。他的优点是随机读取任意一个元素(因为元素时顺序存储的,所以元素的存储位置之间有一定的关系)但是顺序存储的缺点是删除,插入操作需要花费很多时间在移动元素上。
对于链式存储而言,插入和删除元素开销小,操作简便。可扩展性强。
综上所述,如果元素个数已知,且插入删除较少的可以使用顺序结构,而对于频繁有插入删除操作,元素个数未知的,最好使用链式结构,编程时可结合要处理的数据的特点设计数据结构的。
‘柒’ 8.线性表的顺序存储结构比链式存储结构更好。( )
错。应当分情况而论谁更合适。
顺序存储具有随机访问特性,可以很容易地得出每一个元素的地址,但缺点是大小不可变,有些情况下不灵活,但它的访问效率非常高。
链式存储主要是针对大小不可变这个问题提出的解决方案,这样就更节省空间,大小灵活,但由于失去了随机存储特性(就是元素的地址算不出来了,只能一个一个遍历,一个都不能跳过),所以,就增加了时间上的开销。
‘捌’ 线性表的动态链表存储结构与顺序存储结构相比,优点是
前者好比
单向链表
后者好比
数组
优点:主要是便于数据的
增
删等,对于数据交换频繁的地方有所优势
‘玖’ 线性表的链式存储结构与顺序存储结构比较有何特点这两种结构分别适合在什么情况下使用
链式存储结构适用于数据更改(添加,删除)较多的情况。
而顺序存储结构更适用于数据查询(改变某位置上数据的值,查找某位置上的值),各有各的优点,他们的缺点是:
链式结构上查找(查找第几个位置上的值)花的系统开销(主要是时间上的开销)要比顺序结构上的多,
而顺序结构上要删除某位置上的值或者在某位置添加数据时花的系统开销要比在链式上多。
所以在选用存储结构之前就要先考虑到以后对数据的操作主要是查询多还是更改多!
‘拾’ 线性表的顺序存储与链式存储的优缺点各是什么
1.空间上
顺序比链式节约空间。是因为链式结构每一个节点都有一个指针存储域。
2.存储操作上
顺序支持随机存取,方便操作
3.插入和删除上
链式的要比顺序的方便(这句话是不能这么说的,因为插入的话顺序表也很方便,问题是顺序表的插入要执行更大的空间复杂度,包括一个从表头索引以及索引后的元素后移,而链表是索引后,插入就完成了)