数据结构的基本概念

一、数据结构的定义

  • 数据结构: 是相互之间存在一种或多种特定关系的数据元素的集合。

在此定义中有两个关键性的名词——特定关系数据元素。接下来讲述这两个名词的基本概念,这样才能更好地理解数据结构的定义。

二、数据元素的基本概念

首先了解什么是计算机的数据,然后再理解数据元素的概念。

  • 数据: 是能够被计算机所识别,读取并处理的描述客观事物的符号集合。 数据不仅仅包括整型、浮点型等数值类型,还包括字符、声音、图像、视频等非数值类型。

  • 数据元素: 是数据的基本单位,具有一定意义,通常被当成一个整体进行处理。 比如数据是全人类,那么数据元素就是单个人。

数据元素是数据结构中建立数据模型的着眼点。但除了数据元素之外,还需要知道其他几个关于数据的基本概念,以更好地理解数据结构。

  • 数据项: 是数据不可分割的最小单位,一个数据元素由若干个数据项构成。 比如数据元素是单个人,那么数据项可以是姓名、年龄、性别、住址等。

  • 数据对象: 是具有相同特性的数据元素的集合。比如数据是全人类,数据元素是单个人,那么根据国籍这个特性,数据对象可以是中国人、美国人、日本人等。

上述四个概念的关系如下图所示:

image

三、数据元素之间的关系

数据元素之间的关系可分为逻辑结构物理结构,二者同时也是数据结构的三要素之二(逻辑结构、物理结构、数据运算

  • 逻辑结构: 是指数据对象中的数据元素之间的逻辑关系。它独立于计算机,与计算机内部如何存储无关。逻辑结构分为集合、线性、树形和图形结构,其中集合、树形和图形结构统称为非线性结构。
  1. 集合结构: 内部的数据元素除了同属于一个集合外,无任何其他关系。相当于数学中的集合。
图片名称

  1. 线性结构: 内部的数据元素之间是一对一的关系。比如排队买票时,排的队伍就是一个线性结构。
图片名称

  1. 树形结构: 内部的数据元素之间是一对多的层次关系。比如亚洲包括中国、新加坡、缅甸等,而中国又包括浙江、江苏、上海等。
图片名称

  1. 图形结构: 内部的数据元素之间是多对多的关系。比如城市的交通网络,每一个城市都连接许多城市。
图片名称

  • 物理结构(存储结构): 是指数据元素的逻辑结构在计算机中的存储形式。它分为顺序存储结构、链式存储结构、索引存储结构以及散列存储结构
  1. 顺序存储结构: 数据元素存储在地址连续的存储单元内,并且逻辑关系与物理关系一致,即逻辑上相邻的元素在物理存储上也相邻。
图片名称

顺序存储元素之间的关系是通过物理位置相邻来体现的,其最大的好处就是可以实现随机存储,在知道第一个单元的位置时,通过简单运算,根据相邻特性就能知道其后所有元素的数据位置。

  1. 链式存储结构: 逻辑上相邻的数据元素,存储在任意的存储单元内,存储单元不相邻。其存储单元内除了本身的数据元素外,还包含逻辑上相邻元素的地址,通过指针来查询下一个元素的位置。
图片名称
  1. 索引存储结构: 索引存储在内存中不仅要存放每一个数据元素,还要建立一张索引表。索引表中包含许多索引项,每一个索引项都存放两个信息,一个是关键字,另一个是该关键字查找数据对应的地址。
图片名称

通过索引项查找数据元素,速度很快,但是由于索引表的创建,索引存储比较消耗内存资源。

  1. 散列存储结构: 散列存储又称为哈希存储,它通过关键字的相应函数直接计算出对应数据元素的地址。查找速度也相当快。
图片名称

四、总结与补充

了解了数据元素以及元素之间的关系,再看数据结构的定义,是否能够容易理解了呢。接下来就数据类型做一点补充。

  • 数据类型: 是指性质相同的值的集合以及定义在此集合上的一些操作的总称。
  • 抽象数据类型(ADT): 是指一个数学模型及定义在该模型上的一组操作。抽象数据类型包括一个数据对象、数据对象中各数据元素之间的关系以及对数据元素的操作。

image

posted @ 2021-03-17 23:23  江子川  阅读(668)  评论(0)    收藏  举报