基础概念之间的关系大致如下:
一、数据、数据元素、数据项和数据对象
数据 > 数据对象 > 数据元素 > 数据项
类比数据库,这四个概念代表的含义如下所示:
- 数据:整个数据库的所有数据
- 数据对象:这个数据库的一张表,比如学籍表
- 数据元素:学籍表里的一条记录
- 数据项:学籍表里的一个字段值
1、数据(Data)
- 概念:能输入计算机,且能被计算机处理的各种符号的集合
- 包括:数值型数据(整数、实数等)、非数值型数据(文字、图像、图形、声音等)
2、数据元素(Data Element)
- 概念:数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理
- 也简称为元素、或称为记录、结点或顶点
- 数据元素可以由若干个数据项组成
如下图所示,每一行学生的信息,即为一条记录,也就是一个数据元素。
3、数据项(Data Item)
- 构成数据元素的不可分割的最小单位(在数据库中,一个字段值就是一个数据项,一条记录就是一个数据元素)
4、数据对象(Data Object)
- 性质相同的数据元素的集合,是数据的一个子集
二、数据结构(Data Structure)
1、概念:
-
数据元素不是孤立存在的,它们之间存在着某种关系,数据元素相互之间的关系称为结构
-
是指相互之间存在一种或多种特定关系的数据元素集合
-
或者说,数据结构是带结构的数据元素的集合
2、包含以下三方面的内容:
- 数据元素之间的逻辑关系,也称为逻辑结构
- 数据元素及其关系在计算机内存中的表示,称为数据的物理结构或数据的存储结构
- 数据的运算和实现,即对数据元素可以施加的操作以及这些操作在相应的存储结构上的实现
(一)逻辑结构
1、划分方法一:
- 线性结构:线性表、栈、队列、串
- 非线性结构:树、图
2、划分方法二:
- 集合结构:结构中的数据元素之间除了同属于一个集合的关系外,无任何其他关系
- 线性结构:结构中的元素之间存在着一对一的线性关系
- 树形结构:结构中的数据元素之间存在着一对多的层次关系
- 图状结构或网状结构:结构中的数据元素之间存在着多对多的任意关系
(二)存储结构
四种基本的存储结构:
- 顺序存储
- 链式存储
- 索引存储
- 散列存储
1、顺序存储结构
2、链式存储结构
3、索引存储结构
- 在存储节点信息的同时,还建立附加的索引表
- 例如:手机中的通讯录点开,是一个目录。可以根据首字母寻找对应的人物姓名,这就是索引表。而每个人名点进去之后,可以看到具体的联系人信息,这就是节点信息。
4、散列存储结构
三、数据类型和抽象数据类型
(一)数据类型(Data Type)
1、定义:数据类型是一组性质相同的值的集合,以及定义于这个值集合上的一组操作的总称。
数据类型=值的集合+值集合上的一组操作
(二)抽象数据类型(Abstract Data Type,ADT)
1、定义:是指一个数学模型,以及定义在此数学模型上的一组操作
2、抽象数据类型的表示与实现: