当前位置:首页 » 服务存储 » 顺序存储可以实现顺序存取吗
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

顺序存储可以实现顺序存取吗

发布时间: 2022-04-22 02:05:20

A. 顺序存储结构针对什么结构顺序存储结构能存什么顺序存储结构的特征是什么

顺序存储一般使用数组实现。存的当然是节点,节点是你自己定义的数据类型,特征:随机存取,占用连续的存储空间,静态分配,存储密度等于1等等。

B. 什么是顺序存储器

按存储方式分

随机存储器:任何存储单元的内容都能被随机存取,且存取时间和存储单元的物理位置无关。

顺序存储器:只能按某种顺序来存取,存取时间和存储单元的物理位置有关。

C. 顺序存储方式只能用于存储线性结构吗

不是。

顺序存储方式不仅能用于存储线性结构,还可以用来存放非线性结构,例如完全二叉树是属于非线性结构,但其最佳存储方式是顺序存储方式。

数据的逻辑结构包括线性结构、树、图、集合这四种,在线性结构里面又有线性表、栈、队列等等。而数据的存储结构只有两种:顺序存储结构和链式存储结构,这两种存储结构,前面一个是利用数据元素在存储器中的相对位置表示其逻辑结构,另外一个是用指针来表示其逻辑关系。

顺序存储结构

的主要优点是节省存储空间,因为分配给数据的存储单元全用存放结点的数据(不考虑c/c++语言中数组需指定大小的情况),结点之间的逻辑关系没有占用额外的存储空间。

采用这种方法时,可实现对结点的随机存取,即每一个结点对应一个序号,由该序号可以直接计算出来结点的存储地址。但顺序存储方法的主要缺点是不便于修改,对结点的插入、删除运算时,可能要移动一系列的结点。

D. 数据结构的存储方式有哪几种

数据结构的存储方式有顺序存储方法、链接存储方法、索引存储方法和散列存储方法这四种。

1、顺序存储方式:顺序存储方式就是在一块连续的存储区域一个接着一个的存放数据,把逻辑上相连的结点存储在物理位置上相邻的存储单元里,结点间的逻辑关系由存储单元的邻接挂安息来体现。顺序存储方式也称为顺序存储结构,一般采用数组或者结构数组来描述。

2、链接存储方法:它比较灵活,其不要求逻辑上相邻的结点在物理位置上相邻,结点间的逻辑关系由附加的引用字段表示。一个结点的引用字段往往指导下一个结点的存放位置。链接存储方式也称为链接式存储结构,一般在原数据项中增加应用类型来表示结点之间的位置关系。

3、索引存储方法:除建立存储结点信息外,还建立附加的索引表来标识结点的地址。它细分为两类:稠密索引:每个结点在索引表中都有一个索引项,索引项的地址指示结点所在的的存储位置;稀疏索引:一组结点在索引表中只对应一个索引项,索引项的地址指示一组结点的起始存储位置。

4、散列存储方法:就是根据结点的关键字直接计算出该结点的存储地址。

(4)顺序存储可以实现顺序存取吗扩展阅读

顺序存储和链接存储的基本原理

在顺序存储中,每个存储空间含有所存元素本身的信息,元素之间的逻辑关系是通过数组下标位置简单计算出来的线性表的顺序存储,若一个元素存储在对应数组中的下标位置为i,则它的前驱元素在对应数组中的下标位置为i-1,它的后继元素在对应数组中的下标位置为i+1。

在链式存储结构中,存储结点不仅含有所存元素本身的信息,还含有元素之间逻辑关系的信息。数据的链式存储结构可用链接表来表示。其中data表示值域,用来存储节点的数值部分。Pl,p2,…,Pill(1n≥1)均为指针域,每个指针域为其对应的后继元素或前驱元素所在结点的存储位置。

在数据的顺序存储中,由于每个元素的存储位置都可以通过简单计算得到,所以访问元素的时间都相同;而在数据的链接存储中,由于每个元素的存储位置保存在它的前驱或后继结点中,所以只有当访问到其前驱结点或后继结点后才能够按指针访问到,访问任一元素的时间与该元素结点在链式存储结构中的位置有关。

E. 栈只能顺序存储,这句话对吗,为什么

栈只能顺序存储,这句话不对。栈作为一种数据结构,是一种只能在一端进行插入和删除操作的特殊线性表。允许进行插入和删除操作的一端称为栈顶(top),另一端为栈底(bottom)。

一个新元素只能从栈顶一端进入,删除时,只能删除栈顶的元素,即刚刚被插入的元素。所以栈也称为后进先出表。线性表可以顺序存储,也可以链式存储,因此栈也可以采用链式存储结构。



(5)顺序存储可以实现顺序存取吗扩展阅读:

栈是允许在同一端进行插入和删除操作的特殊线性表。允许进行插入和删除操作的一端称为栈顶(top),另一端为栈底(bottom);栈底固定,而栈顶浮动;栈中元素个数为零时称为空栈。插入一般称为进栈(PUSH),删除则称为退栈(POP)。栈也称为后进先出表。

在计算机系统中,栈则是一个具有以上属性的动态内存区域。程序可以将数据压入栈中,也可以将数据从栈顶弹出。在i386机器中,栈顶由称为esp的寄存器进行定位。压栈的操作使得栈顶的地址减小,弹出的操作使得栈顶的地址增大。

栈在程序的运行中有着举足轻重的作用。最重要的是栈保存了一个函数调用时所需要的维护信息,这常常称之为堆栈帧或者活动记录。堆栈帧一般包含如下几方面的信息:

1、函数的返回地址和参数。

2、临时变量:包括函数的非静态局部变量以及编译器自动生成的其他临时变量。

链式存储结构的特点:

1、比顺序存储结构的存储密度小(链式存储结构中每个结点都由数据域与指针域两部分组成,相比顺序存储结构增加了存储空间)。

2、逻辑上相邻的节点物理上不必相邻。

3、插入、删除灵活 (不必移动节点,只要改变节点中的指针)。

4、查找节点时链式存储要比顺序存储慢。

5、每个节点是由数据域和指针域组成。

6、由于簇是随机分配的,这也使数据删除后覆盖几率降低,恢复可能提高。

顺序存储结构的主要优点是节省存储空间,因为分配给数据的存储单元全用存放结点的数据(不考虑c/c++语言中数组需指定大小的情况),结点之间的逻辑关系没有占用额外的存储空间。

采用这种方法时,可实现对结点的随机存取,即每一个结点对应一个序号,由该序号可以直接计算出来结点的存储地址。但顺序存储方法的主要缺点是不便于修改,对结点的插入、删除运算时,可能要移动一系列的结点。

参考资料:网络-栈

参考资料:网络-链式存储结构

参考资料:网络-顺序存储结构

F. 线性表顺序存储怎么是随机存取 链式存储反而是顺序存取 想不通啊 求解

如果是顺序存储结构,可以通过下标直接访问,与存储位置无关,所以是随机存取,比如说数组。
如果是链式存储结构,不能通过下标访问,只能按照存储顺序存取,所以是顺序存取,比如说单链表。
要注意“存储”和“存取”的不同。

G. 栈是不是顺序存储的线性结构啊

不一定。

栈分顺序栈和链式栈。顺序栈为栈的顺序实现,顺序栈为利用顺序存储结构实现的栈。

采用地址连续的存储空间(数组)依次存储栈中数据元素,由于人栈和出栈运算都是在栈顶进行,而栈底位置是固定不变的,可以将栈底位置设置在数组空间的起始处;栈顶位置为随入栈和出栈操作而变化的,故需用一个整型变量top来记录当前栈顶元素在数组中的位置。

链式栈为一种数据存储结构,可以通过单链表的方式来实现,使用链式栈的优点在于它能够克服用数组实现的顺序栈空间利用率不高的特点,但是需要为每个栈元素分配额外的指针空间用来存放指针域。



(7)顺序存储可以实现顺序存取吗扩展阅读

栈作为一种数据结构,为一种只能在一端进行插入和删除操作的特殊线性表。它按照先进后出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后一个数据被第一个读出来)。栈具有记忆作用,对栈的插入与删除操作中,不需要改变栈底指针。

在计算机系统中,栈为一个具有以上属性的动态内存区域。程序可以将数据压入栈中,也可以将数据从栈顶弹出。在i386机器中,栈顶由称为esp的寄存器进行定位。压栈的操作使得栈顶的地址减小,弹出的操作使得栈顶的地址增大。

H. 对于顺序存储的线性表,访问结点和增加、删除结点的时间复杂度为答案是O(1)和O(n)。为什么

顺序存储可以实现“随机存取”,因此访问结点的时间复杂度为O(1),而插入、删除结点由于涉及到大量移动元素,故其时间复杂度为O(n)。

用存储结点的物理位置来体现结点之间的逻辑关系的存储方法。在高级语言中,一块连续的存储空间通常可用一个数组来表示。因此,顺序存储通常用一个数据元素类型的数组来存储。最经典的顺序存储结构是顺序表,将线性结构的元素按序存放在一个数组中。

(8)顺序存储可以实现顺序存取吗扩展阅读

数据元素之间的关系有两种不同的表示方法:顺序映象和非顺序映象,并由此得到两种不同的存储结构:顺序存储结构和链式存储结构。数据的存储结构,也称为数据的物理结构,是数据的逻辑结构在计算机中的实现。

链接存储方法它不要求逻辑上相邻的结点在物理位置上亦相邻,结点间的逻辑关系是由附加的指针字段表示的。由此得到的存储表示称为链式存储结构,链式存储结构通常借助于程序设计语言中的指针类型来实现。数据的链式存储结构可用链接表来表示。

I. 顺序存储方式能用于存储什么结构的数据

不是
顺序存储方式不仅能用于存储线性结构,还可以用来存放非线性结构,例如完全二叉树是属于非线性结构,但其最佳存储方式是顺序存储方式

J. 线性表的顺序存储结构是随机存取的

可以参考下面几种解释

1、解释一:

顺序存储结构的地址在内存中是连续的所以可以通过计算地址实现随机存取,与此相对 链式存储结构的存储地址不一定连续,只能通过第个结点的指针顺序存取

2、解释二:

线性表的顺序存储结构可以通过线性表的首址加偏移的方法计算出来第i个数据的位置a+i*sizeof(单个结构)而线性表的链式存储结构要访问第i个数据,就必须先访问前面的i-1个数据

(10)顺序存储可以实现顺序存取吗扩展阅读:

线性表主要由顺序表示或链式表示,在实际应用中,常以栈、队列、字符串等特殊形式使用,顺序表示指的是用一组地址连续的存储单元依次存储线性表的数据元素,称为线性表的顺序存储结构或顺序映像,顺序存储结构是随机存取的。

链式表示指的是用一组任意的存储单元存储线性表中的数据元素,称为线性表的链式存储结构。它的存储单元可以是连续的,也可以是不连续的。