1. 基本概念和术语
1.1 数据能输入计算机且能被计算机处理的各种符号的集合。包括:
- 数值型数据:整数、实数等;
- 非数值型数据:文字、图像、图形、声音等。
1.2 数据元素:是数据的基本单元。
1.3 数据项:构成数据元素的不可分割的最小单位。
1.4 数据对象:是性质相同的数据元素的集合,是数据的一个子集。
1.5 数据结构:带结构的数据元素的集合。包括:
- 逻辑结构:数据元素之间的逻辑关系;
划分方法一:线性结构和非线性结构;
划分方法二:集合结构、线性结构(一对一)、树形结构(一对多)、图型结构(多对多); - 物理结构:数据元素及其关系在计算机内存中的表示;
顺序存储结构、链式存储结构、索引存储结构(索引该结点的存储地址表)、散列存储结构(根据结点的关键字直接计算出该结点的存储地址); - 数据的运算和实现:对数据元素可以施加的操作以及这些操作在响应存储结构上的实现。
1.6 数据类型:一组性质相同的值的集合以及定义于这个值集合上的一组操作的总称。
1.7 抽象数据类型:是指一个数学模型以及定义在此数学模型上的一组操作。包括:
- 数据对象;
- 数据关系;
- 基本操作。
1.8 算法:对特定问题求解方式和步骤的一种描述,它是指令的有限序列。每个指令表示一个或多个操作。
其描述为:
- 自然语言;
- 流程图;
- 伪代码。
其特性为:
- 有穷性;
- 确定性;
- 可行性;
- 输入;
- 输出。
其要求为:
- 正确性;
- 可读性;
- 健壮性;
- 高效性。
其效率为:
- 时间效率:时间复杂度:最好、最坏、平均;
- 空间效率:空间复杂度。
1.9 程序:是用某种程序设计语言对算法的具体实现。即程序=数据结构+算法。