数据元素之间的关系在计算机中有几种表示方法

如题所述

对于数据结构课程而言,线性结构是n个数据元素的有序集合数据元素之间的关系的表示方法有顺序存储方式、链式存储方式、索引存储方式和散列存储方式。

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

2、链式存储方式。每个存储结点除包含数据元素信息外还包含一组(至少一个)指针。指针反映数据元素间的逻辑关系。这种方式不要求存储空间连续,便于动态操作(如插入、删除等),但存储空间开销大(用于指针),另外不能折半查找等。

3、索引存储方式。除数据元素存储在一地址连续的内存空间外,尚需建立一个索引表,索引表中索引指示存储结点的存储位置(下标)或存储区间端点(下标),兼有静态和动态特性。

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

数据结构一般包括以下三方面内容:

1、数据元素之间的逻辑关系,也称数据的逻结构(Logical Structure);数据的逻结构是从逻辑关系上描述数据,与数据的存储无关是独立于计算机的。数据的逻辑结构可以看作是从具体问题抽象出来的数学模型。

2、数据元素及其关系在计算机存储内的表示,称为数据的存储结构(Storage Strucure);数据的存储结构是逻辑结构用计算机语言的实现(亦称为映象),它依赖于计算机语言。对机器语言而言,存储结构是具体的。。一般,只在高级语言的层次上讨论存储结构。

3、数的运算,即对数据施加的操作。数据的运算定义在数据的逻辑结构上,每种逻辑结构都有一个运算的集合。最常用的检索、插删除、更新、排序等运算实际上只是在抽象的数据上所施加的一系列抽象的操作。

所胃抽象的操作,是指我们只知道这些操作是"做而无须考虑”如何做”。只有确定了存储结构之后,才考虑如何具体实现这些运算。



温馨提示:答案为网友推荐,仅供参考
相似回答