数据结构
绪论
基本概念
数据是信息的载体,能被输入到计算机中,并被计算机识别和处理的符号的集合
数据元素是数据的基本单位,通常作为一个整体进行考虑和处理
一个数据元素可由若干数据项组成,数据项是构成数据元素的不可分割的最小单位
数据结构是相互之间存在的一种或多种特定关系的数据元素的集合
数据对象是具有相同性质的数据元素的集合,是数据的子集
三要素
逻辑结构
- 集合(无其他关系)
- 线性表
- 数据元素之间是一对一关系
- 除了第一个元素,所有元素都有唯一前驱
- 除了最后一个元素,所有的元素都有唯一后继
- 树(一对多关系)
- 图(多对多关系)
物理结构(存储结构)
顺序存储
逻辑上相邻的元素在物理位置上相邻
链式存储
逻辑上相邻的元素在物理位置上可以不相邻
索引存储
在存储元素信息的同时,还建立附加的索引表。索引表中的每项称为索引项
散列存储
根据元素的关键字直接计算出存储地址
数据的运算
施加在数据上的运算包括运算的定义和实现。
数据类型
- 数据类型
- 原子类型(其值不可再分)
- 结构类型(可以分解为若干成分的数据类型)
- 抽象数据类型(抽象数据组织及与之相关的操作)
算法
程序=数据结构+算法
算法的特性
- 有穷性
- 确定性
- 可行性
- 输入
- 输出
算法的目标
- 正确性
- 可读性
- 健壮性
- 高效率
- 低存储量