一、什么是数据结构
1.术语:
(考点:问答题的名词解释)
- 数据:客观事物的符号表示,是所以能输入到计算机中并被计算机程序处理的符号的总称
- 数据元素(元素、记录):数据的基本单位,在计算机中通常作为一个整体进行考虑和处理。
- 数据项:是组成数据元素的、有独立含义的、不可分割的最小单位。
- 数据对象:性质相同的数据元素的集合,是数据的一个子集。
数据结构:
相互之间存在一种或多种特定关系的数据元素的集合。(重点)
1.逻辑结构:
特点:从逻辑关系上描述数据,与数据的存储无关,是独立于计算机的。
要素:一是数据元素;二是关系。
2.存储结构:
定义:
数据对象在计算机的存储表示称为数据的存储结构,也称为物理结构。
(1)顺序存储结构
顺序结构是借助元素在存储器的相对位置来表示数据元素之间的逻辑关系,通常借助程序设计语言的数组类型来描述。
(2)链式存储结构
在每一个数据元素中增加存放地址(指针)的存储单元,用此指针来表示数据元素之间的逻辑关系。
通常借助程序设计语言的结构体类型和指针类型来描述。
二、如何描述数据结构
数据类型:
一个值的集合和定义在这个值集上的一组操作的总称。
抽象数据类型:
由用户定义的、表示应用问题的数学模型,以及定义在这个模型上的一组操作的总称。
(定义)
抽象数据类型的定义格式:
ADT 抽象数据类型名{
数据对象:<数据对象的定义>
数据关系:<数据关系的定义>
基本操作:<基本操作的定义>
}ADT 抽象数据类型名
基本操作的定义格式:
基本操作名(参数表)
初始条件:<初始条件描述>
操作结果:<操作结果描述>
(表示与实现)
见课本第8页~第10页
三、算法及算法分析
算法:
定义:是为了解决某类问题而规定的一个有限长的操作序列。
算法的五个特性:(重点)
- 有穷性
- 确定性
- 可行性
- 输入
- 输出
算法评价标准:
- 正确性
- 可读性
- 健壮性
- 高效性