本章要点
- 数据结构的基本概念
- 数据
- 数据元素
- 数据对象
- 数据类型
-
数据结构
- 数据结构的三要素
- 逻辑结构
- 数据的运算
- 数据的存储结构(物理结构)
数据结构的基本概念
数据
数据是信息的载体是描述客观事物属性的数字符,即所有能输入到计算机中被计算机程序识别和处理的符号。的集合数据是计算机程序加工的原料。
数据元素
数据元素描述一个个体,数据元素是数据的基本单位,通常作为一个整体进行考虑和处理。一个数据元素可以由若干数据项组成,数据项是构成数据元素的不可分割的最小单位,例如学生记录就是一个数据元素,它有学号、姓名、性别等数据项组成。
数据对象
数据对象是具有相同性质的数据元素的集合,是数据的一个子集,例如整数数据对象是集合N={0,1,2,...}。
数据类型
数据类型是一个值的集合和定义在此集合上的一组操作的总称。
数据类型分为原子类型,结构类型,抽象数据类型
1)原子类型:其值不可再分的数据类型。
2)结构类型:其实可以再分解为若干成分(分量)的数据类型。
3)抽象数据类型(ADT),是抽象数据组织及与之相关的操作。
数据结构的三要素
- 逻辑结构
- 数据的运算
- 数据的存储结构(物理结构)
逻辑结构
- 集合结构
- 线性结构
- 树形结构
- 图状结构
(1)集合结构:结构中的数据元素之间除同属一个集合外,别无其他关系。
(2)线性结构:结构中的数据元素之间只存在一对一的关系,除了第一个元素,所有的元素都有唯一的前驱,除了最后一个元素,所有的元素都有唯一的后继。
(3)树形结构:结构中的数据元素之间存在一对多的关系。
(4)图状结构或者网状结构:结构中的数据元素之间存在多对多的关系。
数据的运算
针对某种逻辑结构,结合实际需求定义基本运算,包括一些增删改查。
是加在数据上的运算,包括运算的定义和实现。运算的定义是针对逻辑结构的,指出运算的功能。运算的实现是针对存储结构的,指出运算的具体操作步骤。
数据的存储结构
如何用计算机实现这种数据结构? 如何用计算机表示数据元素的逻辑关系?就需要考虑存储
1. 顺序存储
2.链式存储
3.索引存储
4.散列存储:
根据元素的关键字直接计算出该元素的存储地址,又称哈希存储。
总结:
1.顺序存储要求数据元素在物理位置上相邻存储,而链式存储、索引存储、散列存储、数据元素在物理位置上可以不相邻,是离散存放,它们三种统称为非顺序存储或者离散存储。
2.若采用顺序存储,则各个数据元素在物理上必须是连续的,若采用非顺序存储,则各个数据元素在物理上可以离散的。
3.数据的存储结构会影响存储空间分配的方便程度。
4.数据的存储结构会影响对数据运算的速度。例如在B和D之间插入新元素C
5.运算的定义是针对逻辑结构的,指出运算的功能。
6.运算的实现是针对存储结构的,指出运算的具体操作步骤。