第一章 绪论
1.1 数据结构的基本概念
1.1.1 基本概念和术语
1.1.2 数据结构三要素
1.数据的逻辑结构
线性结构和非线性结构
2.数据的存储结构
顺序存储
优点:
随机存储,每个元素占用最少的存储空间
缺点:
只能使用相邻的一整块存储单元,因此可能产生较多的外部碎片。
链式存储
优点:
不会出现碎片现象,能充分利用所有存储单元;
缺点:
每个元素因存储指针而占用额外的存储空间,且只能实现顺序存取。
索引存储
优点:
检索速度快
缺点 :
是附加的索引表额外
占用存储空间。另外,增加和删除数据时也要修改索引表,因而会花费较多的时间。
散列存储(哈希存储)
优点:
检索、增加和删除结点的操作都很快
缺点:
若散列函数不好,则可能出现元素存储单元的冲突,而解决冲突会增加时间和空间开销。
3.数据的运算
运算的定义是针对逻辑结构的
运算的实现是针对存储结构的
1.2 算法和算法评价
五个特性
判断算法好:
1.2.2 算法效率的度量
时间复杂度
空间复杂度
第二章 线性表
2.1 线性表的定义和基本操作
2.1.1 线性表的定义
线性表的两种存储方式:顺序存储和链式存储
线性表的特点:
(逻辑结构)
2.1.2 线性表的基本操作
2.2 线性表的顺序表示
2.2.1 顺序表的定义
线性表的顺序存储又称顺序表
逻辑顺序与其物理顺序相同
随机存取
线性表中元素的位序是从 开始的,而数组中元素的下标是从 开始的。