当前位置:首页 » 服务存储 » 存储结构的映射逻辑关系的方式
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

存储结构的映射逻辑关系的方式

发布时间: 2022-07-06 18:59:26

‘壹’ 线性表的顺序存储结构是以什么来表示数据元素之间的逻辑关系的

线性表是最基本、最简单、也是最常用的一种数据结构。线性表(linear list)是数据结构的一种,一个线性表是n个具有相同特性的数据元素的有限序列。

线性表主要由顺序表示或链式表示。在实际应用中,常以栈、队列、字符串等特殊形式使用。

顺序表示指的是用一组地址连续的存储单元依次存储线性表的数据元素,称为线性表的顺序存储结构或顺序映像(sequential mapping)。它以“物理位置相邻”来表示线性表中数据元素间的逻辑关系,可随机存取表中任一元素。

由此得到的存储结构为顺序存储结构,通常顺序存储结构是借助于计算机程序设计语言(例如c/c++)的数组来描述的。

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

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

推荐课程:C语言教程。

线性表顺序存储结构的结构代码:

#define MAXSIZE 20

typedef int ElemType;

typedef struct

{

ElemType data[MAXSIZE];

int length; // 线性表当前长度

} SqList;

顺序存储结构封装需要三个属性:

存储空间的起始位置,数组data,它的存储位置就是线性表存储空间的存储位置。

线性表的最大存储容量:数组的长度MaxSize。

线性表的当前长度:length。

注意:数组的长度与线性表的当前长度需要区分一下:数组的长度是存放线性表的存储空间的总长度,一般初始化后不变。而线性表的当前长度是线性表中元素的个数,是会变化的。

线性表顺序存储结构的优缺点

线性表的顺序存储结构,在存、读数据时,不管是哪个位置,时间复杂度都是O(1)。而在插入或删除时,时间复杂度都是O(n)。

这就说明,它比较适合元素个数比较稳定,不经常插上和删除元素,而更多的操作是存取数据的应用。

优点:

无须为表示表中元素之间的逻辑关系而增加额外的存储空间。

可以快速地存取表中任意位置的元素。

缺点:

插上和删除操作需要移动大量元素。

当线性表长度变化较大时,难以确定存储空间的容量。

容易造成存储空间的“碎片”

‘贰’ 数据的存储结构

存储结构就是物理结构,这没有错
存储结构是逻辑结构的存放方式,这没有错

逻辑结构是看不见摸不着的,但是计算机又要对数据进行逻辑结构的操作,那这就很尴尬了,咋办。
这时候存储结构(也就是数据的物理结构)挺身而出,“哥来给你表示你的位置”
存储结构的位置可以用数组或指针具体表示的

这时候就可以根据物理结构的存储位置来对数据的逻辑结构进行操作
那么二者肯定是要有联系的
联系:
逻辑结果是存储结构(物理结构)的映射
存储结构(物理结构)是逻辑结构的映像

就好比风是逻辑机构,缥缈见不着
那要把控它的位置,进行风向预测
那么气象台就根据某些手段进行控制,把风的具体位置给彰显出来了。

‘叁’ 逻辑结构与存储结构是什么关系

存储结构无非连续不连续两种
逻辑结构可以很多
比如队列(逻辑结构),可以用数组(连续)存储,也可以用链表(不连续)存储
同一种存储结构可以理解成多种逻辑结构,这就是数据结构的精妙之处,学学数据结构就明白了其实不必死究这种名字的东西,理解用途就够了

‘肆’ 何谓数据的逻辑结构何谓数据的存储结构两者有何联系

逻辑结构指反映数据元素之间的逻辑关系的数据结构,其中的逻辑关系是指数据元素之间的前后件关系,而与他们在计算机中的存储位置无关。逻辑结构包括:
1、集合结构:数据结构中的元素之间除了“同属一个集合”
的相互关系外,别无其他关系。
2、线性结构:数据结构中的元素存在一对一的相互关系。
3、树形结构:数据结构中的元素存在一对多的相互关系。
4、图形结构:数据结构中的元素存在多对多的相互关系。
存储结构指数据元素连同其逻辑关系在存储器上的存放形式,主要的有四类:顺序、链接、索引、散列。一种数据结构可表示成一种或多种存储结构。
两者的关系在于:逻辑结构用于设计算法,存储结构用于算法编码实现。具体而言某种存储结构与某种逻辑结构没有必然的联系,算法的实现效率越高、解决问题越方便。

(4)存储结构的映射逻辑关系的方式扩展阅读
数据结构是指同一数据元素类中各数据元素之间存在的关系。数据结构分别为逻辑结构、存储结构(物理结构)和数据的运算。
数据的逻辑结构是从具体问题抽象出来的数学模型,是描述数据元素及其关系的数学特性的,有时就把逻辑结构简称为数据结构。逻辑结构是在计算机存储中的映像,形式地定义为(K,R)(或(D,S)),其中,K是数据元素的有限集,R是K上的关系的有限集。
根据数据元素间关系的不同特性,通常有下列四类基本的结构:集合结构、线性结构、树型结构、图形结构。
线性结构的特点是数据元素之间是一种线性关系,数据元素“一个接一个的排列”。在一个线性表中数据元素的类型是相同的,或者说线性表是由同一类型的数据元素构成的线性结构。
线性表是最简单、最基本、也是最常用的一种线性结构。
它有两种存储方法:顺序存储和链式存储,它的主要基本操作是插入、删除和检索等。
数据结构在计算机中的表示(映像)称为数据的物理(存储)结构。它包括数据元素的表示和关系的表示。数据元素之间的关系有两种不同的表示方法:顺序映象和非顺序映象,并由此得到两种不同的存储结构:顺序存储结构和链式存储结构。
1、顺序存储方法:它是把逻辑上相邻的结点存储在物理位置相邻的存储单元里,结点间的逻辑关系由存储单元的邻接关系来体现,由此得到的存储表示称为顺序存储结构。顺序存储结构是一种最基本的存储表示方法,通常借助于程序设计语言中的数组来实现。
2、链接存储方法:它不要求逻辑上相邻的结点在物理位置上亦相邻,结点间的逻辑关系是由附加的指针字段表示的。由此得到的存储表示称为链式存储结构,链式存储结构通常借助于程序设计语言中的指针类型来实现
3、索引存储方法:除建立存储结点信息外,还建立附加的索引表来标识结点的地址。
4、散列存储方法:就是根据结点的关键字直接计算出该结点的存储地址。
数据结构中,逻辑上(逻辑结构:数据元素之间的逻辑关系)可以把数据结构分成线性结构和非线性结构。
线性结构的顺序存储结构是一种顺序存取的存储结构,线性表的链式存储结构是一种随机存取的存储结构。线性表若采用链式存储表示时所有结点之间的存储单元地址可连续可不连续。逻辑结构与数据元素本身的形式、内容、相对位置、所含结点个数都无关。
参考资料来源:搜狗网络:数据结构

‘伍’ 4种基本的存储映射方法是哪四种

四种基本的存储映射方法是顺序存储,链接的方法,索引的方法和散列的方法。
以上介绍的四种存储方法还可以组合起来,一个逻辑结构有多种不同的存储方案,要根据运算和算法实现来确定。

‘陆’ 存储结构有哪些

存储结构有顺序存储和链接存储。顺序存储和链接存储是数据的两种最基本的存储结构。

1、顺序存储

顺序存储方法是把逻辑上相邻的结点存储在物理位置相邻的存储单元里,结点间的逻辑关系由存储单元的邻接关系来体现,由此得到的存储表示称为顺序存储结构。顺序存储结构是一种最基本的存储表示方法,通常借助于程序设计语言中的数组来实现。

2、链接存储

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

(6)存储结构的映射逻辑关系的方式扩展阅读:

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

储存系统的层次结构为了解决存储器速度与价格之间的矛盾,出现了存储器的层次结构。

‘柒’ 链式存储结构的特点是利用什么来表示数据元素之间的逻辑关系

1。在线性表的顺序存储结构中,元素之间的逻辑关系是通过(元素的存储地址)决定的;

2。在线性表的链接存储中,元素之间的逻辑关系是通过(结点中的指针)决定的。

‘捌’ 什么是指基于数据的逻辑结构和存储结构的处理方法

基于数据的逻辑结构和存储结构的处理方法指的是:

1、数据结构有逻辑上的数据结构和物理上的数据结构之分。逻辑上的数据结构反映成分数据之间的逻辑关系即逻辑结构,而物理上的数据结构反映成分数据在计算机内部的存储安排即存储结构。数据结构是数据存在的形式,利用二者的方法来处理数据。

2、数据的逻辑结构是对数据之间关系的描述,有时就把逻辑结构简称为数据结构。逻辑结构形式地定义为(K,R)(或(D,S)),其中,K是数据元素的有限集,R是K上的关系的有限集。

逻辑结构有四种基本类型:集合结构、线性结构、树状结构和网络结构。

3、数据结构的存储结构是指逻辑结构的存储映像(image)。数据结构DS的物理结构P对应于从DS的数据元素到存储区M(维护着逻辑结构S)的一个映射。 

存储结构是数据的逻辑结构用计算机语言的实现,常见的存储结构有顺序存储,链式存储,索引存储,以及散列存储。

(8)存储结构的映射逻辑关系的方式扩展阅读:

常用数据结构类型:

1、数组

在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。

在C语言中, 数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。

2、栈

栈是只能在某一端插入和删除的特殊线性表。它按照先进后出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后一个数据被第一个读出来)。

3、队列

队列一种特殊的线性表,它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列是按照“先进先出”或“后进后出”的原则组织数据的。队列中没有元素时,称为空队列。

4、链表

链表是一种物理存储单元上非连续、非顺序的存储结构,它既可以表示线性结构,也可以用于表示非线性结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。

链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。

5、图

图是由结点的有穷集合V和边的集合E组成。其中,为了与树形结构加以区别,在图结构中常常将结点称为顶点,边是顶点的有序偶对,若两个顶点之间存在一条边,就表示这两个顶点具有相邻关系。

参考资料来源:网络—数据结构

‘玖’ 如何根据数据的逻辑结构设计相应的存储结构

逻辑结构将的是关系,比如集合,线性,非线性,都是元素或者结点之间的关系,而存储结构讲的是数据元素的表示和关系的表示.前一个是抽象的,后一个是具体的,可以实现的.
同一种逻辑结构采用不同的存储方法,可以得到不同的存储结构.比如线性结构采用采用顺序存储方法,就可以得到顺序表,采用链式存储方法就可以得到链表.

‘拾’ 在数据结构中,逻辑结构和存储结构之间的关系

存储结构是逻辑结构的存储映像,逻辑结构指的是数据间的关系,它又分为线性结构和非线性结构,这两者并不冲突。一个指的是数据之间的关系,而另一个指这种关系在计算机中的表现形式。两者的区别就在于给他们定义的特殊操作,它们都有”出“和”入“两种操作,一个是“先进先出”,而一个是“后进先出”。

一种逻辑结构在计算机里可以用不同的存储结构实现。比如逻辑结构中简单的线性结构,可以用数组(顺序存储)或单向链表(链接存储)来实现。逻辑结构:指各数据元素之间的逻辑关系。存储结构:就是数据的逻辑结构用计算机语言的实现。

(10)存储结构的映射逻辑关系的方式扩展阅读:

1、逻辑结构

是指数据之间的相互关系。通常分为四类结构:

集合:结构中的数据元素除了同属于一种类型外,别无其它关系。

线性结构:结构中的数据元素之间存在一对一的关系。

树型结构:结构中的数据元素之间存在一对多的关系。

图状结构:结构中的数据元素之间存在多对多的关系。

2、存储结构

是指数据结构在计算机中的表示,又称为数据的物理结构。通常由四种基本的存储方法实现:

顺序存储方式。数据元素顺序存放,每个存储结点只含一个元素。存储位置反映数据元素间的逻辑关系。存储密度大。但有些操作(如插入、删除)效率较差。

数据元素间的逻辑关系。这种方式不要求存储空间连续,便于动态操作(如插入、删除等),但存储空间开销大(用于指针),另外不能折半查找等。

索引存储方式。除数据元素存储在一组地址连续的内存空间外,还需建立一个索引表,索引表中索引指示存储结点的存储位置(下标)或存储区间端点(下标)。

散列存储方式。通过散列函数和解决冲突的方法,将关键字散列在连续的有限的地址空间内,并将散列函数的值解释成关键字所在元素的存储地址。其特点是存取速度快,只能按关键字随机存取,不能顺序存取,也不能折半存取。