当前位置:首页 » 服务存储 » 静态链表是顺序存储还是链式
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

静态链表是顺序存储还是链式

发布时间: 2023-06-01 01:58:30

Ⅰ 顺序表和静态链表的区别

顺序表和静态链表的物理结构(即存储结构)是相同的,搭宴在计算机内存中以数知凯银组的形式保存的线性表,是用一组地址连续的存储单元依次存储数据元素的线性结构,但两者的数据结构(逻辑结构)是不同的:
顺序表:着眼于整个数组,采用动态分配的一维数组,仍然借助了指针进行数据操作,具体描述如下:

typedef struct

{

ElemType *elem;

int length;

int listsize;

}Sqlist;

在线性表的插入和删除操作时,需要借助指针来移孙颤动元素。

静态表:不设指针而使用链表结构,数组元素的一个分量用于存放数据,另一个用来作为“游标”指示下一结点在数组中的相对位置,数据的存储尽管是采用一维数组的形式存储在计算机中,但仍然是继承了链表指向不一定总是指向紧挨着其的结点,描述如下:

typedef struct

{

Elemtype data;

int cur;

}component,SLinkList[MAXSIZE];

这种存储结构,仍需要预先分配一个较大的空间,但在作为线性表的插入和删除操作时不需移动元素,仅需修改指针(游标),故仍具有链式存储结构的主要优点。

鉴于两者的数据结构不同,对用的数据操作也就不同。

Ⅱ 简答1.在数据结构课程中,数据的逻辑结构,数据的存储结构,

1:数据的逻辑结构说明数据元素之间的顺序关系,它依赖于计算机的存储结构答:错.说明:逻辑结构可用不同的存储结构实现,“它依赖于计算机的存储结构”完全说不通。2:算法的运行时间涉及到加,减,乘,除,转移,存取等基本运算。要想准确的计算总运行时间是不可行的。答:对。说明:软硬件环境都是千差万别的。也没必要去准确计算。算法分析只是为了比较不同算法的优劣。3:在顺序存储结构中,有时也存储数据结构中元素之间的关系。(这个我觉得静态链表在存储结构上是顺序存储,可是其中不也存储了节点之间的关系的么?)答:错。说明:“顺序存储结构”必须体现元素之间的关系,不是“有时”。“链式存储结构”并不是“顺序存储结构”,后者称“顺序表”或“邻接表”。有些书用“链表是顺序存取”说法,但并不是指“链表是顺序存储结构”。

Ⅲ 请教大家:静态链表是顺序存储结构,还是链式存储结构

所谓静态,仅仅是在编译的时候就分配好了内存地址而已;

静态链表还是链表,你看你的链表创建方法就知道了,它是一个节点一个节点创建的,每次申请节点的内存地址不是连续的,这和静态与动态无关,所以不是顺序存储结构;

极端一点的情况是,就算真的所有节点都是在内存中按顺序排列的,链表依然是链式存储结构,因为它每次查找下一个节点时,是通过自己存储的地址指针去找的,而不是在自身地址上+1去找的,就算这两个的计算结果相同,但寻址方式不同,后者才是顺序存储结构

Ⅳ 静态链表是顺序存储结构,还是链式存储结构

1、在打开的ie浏览器窗口右上方点击齿轮图标,选择“Internet选项”,如下图所示:

Ⅳ 线性表链式存储结构是什么

线性表是一种逻辑结构,它有两种存储方式,顺序存储和链式存储。
顺序存储对应的是顺序表,链式存储对应的有单链表,双链表,循环链表以及静态链表。

其中,线性表的链式存储又称为单链表。
注:双链表、循环链表等都是由单链表演化而来。
单链表:一个后继指针,一个头结点和头指针。每一个结点是存储下一个结点的存储位置,因此最后一个结点存储null,也就是空值。

双链表:双链表结点中有两个指针,prior和next,即有前驱指针和后继指针,分别指向前驱和后继结点。

循环链表:循环链表和单链表的区别在于最后一个结点的指针不是null(回到单链表的知识去看一下吧),而是指向头结点,从而整个链表成为了一个环。

循环双链表:循环双链表中头结点的指针prior指针还要指向表尾结点。
注:在循环双链表L中,当循环双链表为空表时,其头结点的prior域和next域都等于L。

静态链表:静态链表是借助数组来描述线性表的链式存储结构。结点有data域和指针域next。按照我的理解:其实静态链表和单链表在结构上差不太多,但是静态链表又和顺序表很像,可以把静态链表看作是单链表和顺序表的结合吧。

链式存储结构就这几种了。

Ⅵ 静态链表

静态链表是亮闭镇用顺序存储来实现链表结构的一种存储结构。
它的出发点是是其既有链表的优点(添加删除元素时不需要大批量的移动表中数据)又有顺序表的优点(能方态散便定位元素位置)。

但这样带来的效果是操作复杂,每一步添加或删除都是在2静态表中敬粗操作。

今天仔细学习下清华版严蔚敏的第二章,其中有描述。

Ⅶ 几个数据结构判断题: 1:数据的逻辑结构说明数据元素之间的顺序关系...

1:这个是错误的,数据的逻辑结构是指数据独立于计算机的物理地址存储的,不会依赖于计算机的存储结构,而数据的存储结构即物理机构才会依赖计算机的存储结构。

2:这个是正确的。因为程序是按顺序被计算机执行的(逻辑上的顺序执行),所以这个是可以计算的

3:这个是不对的。因为顺序存储结构中,已经分配好了存储空间给相应的数据结构,而数据结构是存储数据元素,他们彼此不会在内存中有什么结构上的关系,不然也会成为一个新的结构体存入内存。

Ⅷ 静态链表的特点

静态链表这种存储结构,仍需要预先分配一个较大的空间,但在作为线性表的插入和删除操作时不需移动元素,仅需修改指针,故仍具有链式存储结构的主要优点。

假如有如上的静态链表S中存储着线性表(a,b,c,d,f,g,h,i),Maxsize=11,如图所示,要在第四个元素后插入元素e,方法是:先在当前表尾加入一个元素e,即:S[9].data = e;然后修改第四个元素的游标域,将e插入到链表中,即:S[9].cursor = S[4].cursor;S[4].cursor = 9;,接着,若要删除第7个元素h,则先顺着游标链通过计数找到第7个元素存储位置6,删除的具体做法是令S[6].cursor = S[7].cursor。

(8)静态链表是顺序存储还是链式扩展阅读:

静态链表中,除了数据本身通过游标组成链表外,还需要有一条连接各个空闲位置的链表,称为备用链表。

作用:回收数组中未使用或者之前使用过(现在不用)的存储空间,留待后期使用。即静态链表使用数组申请的物理空间中,存在两个链表,一条连接数据,另一条连接数组中为使用的空间。

注:通常备用链表的表头位于数组下标为0(a[0])的位置,而数据链表的表头位于数组下标为1(a[1])的位置。

Ⅸ 数据结构 线性表 判断题

1对
2应该不是
3对
4不好意思 , 我没听过静态链表这个名词,我写的链表都是用指针new出来的,可以delete的那种, 这种链表没写过, 不是很清楚他的结构,如果给我猜到话,我猜不是,我同学也没听知山过这个名词则猛蔽,所以感觉应孙州该不是
4答案不对:逻辑上链表的性质,存储方式是数组方式,刚问了老师 ,,(八年的编程经验)