前言
第1章 绪论
1.1 数据结构的讨论范畴
1.2 数据结构的相关概念
1.2.1 基本概念
1.2.2 数据结构
1.2.3 数据类型
1.3 算法描述与算法分析
1.3.1 基本概念
1.3.2 算法描述
1.3.3 算法分析
1.4 习题
第2章 线性表
2.1 线性表的逻辑表示
2.1.1 线性表的定义
2.1.2 线性表的抽象数据类型
2.2 线性表的顺序存储表示与基本操作
2.2.1 顺序表
2.2.2 顺序表上基本操作的实现
2.3 线性表的链式存储表示与基本操作
2.3.1 单链表
2.3.2 单链表上基本操作的实现
2.3.3 循环链表
2.3.4 双向链表
2.3.5 静态链表
2.4 顺序表与链表的比较
2.4.1 基于空间的考虑
2.4.2 基于时间的考虑
2.5 算法设计举例
2.6 习题
第3章 栈与队列
3.1 栈
3.1.1 栈的逻辑表示
3.1.2 栈的顺序存储表示与基本操作
3.1.3 栈的链式存储表示与基本操作
3.2 队列
3.2.1 队列的逻辑表示
3.2.2 队列的顺序存储表示与基本操作
3.2.3 队列的链式存储表示与基本操作
3.3 算法设计举例
3.4 习题
第4章 串
4.1 串的逻辑表示
4.1.1 串的定义
4.1.2 串的抽象数据类型
4.2 串的顺序存储表示与基本操作
4.2.1 静态顺序串
4.2.2 动态顺序串
4.2.3 顺序串上基本操作的实现
4.3 串的链式存储表示与基本操作
4.3.1 链串
4.3.2 链串上基本操作的实现
4.4 串的模式匹配
4.4.1 BF算法
4.4.2 KMP算法
4.5 算法设计举例
4.6 习题
第5章 多维数组
5.1 数组的逻辑表示
5.1.1 数组的定义
5.1.2 数组的抽象数据类型
5.2 数组的顺序存储表示与基本操作
5.2.1 数组顺序表
5.2.2 数组顺序表上基本操作的实现
5.3 矩阵的压缩存储表示与基本操作
5.3.1 特殊矩阵
5.3.2 稀疏矩阵
5.3.3 矩阵压缩存储上基本操作的实现
5.4 算法设计举例
5.5 习题
第6章 广义表
6.1 广义表的逻辑表示
6.1.1 广义表的定义
6.1.2 广义表的抽象数据类型
6.2 广义表的链式存储表示与基本操作
6.2.1 头尾链表
6.2.2 扩展线性链表
6.2.3 广义表链式存储上基本操作的实现
6.3 算法设计举例
6.4 习题
笫7章 树与二叉树
7.1 树的逻辑表示
7.1.1 树的定义
7.1.2 树的抽象数据类型
7.1.3 树的表示方法
7.1.4 树的基本术语
7.2 二叉树
7.2.1 二叉树与树的关系
7.2.2 二叉树的基本性质
7.2.3 二叉树的存储表示
7.2.4 遍历二叉树
7.2.5 线索二叉树
7.3 树
7.3.1 树的存储表示
7.3.2 树与二叉树的转换
7.3.3 树的遍历
7.4 哈夫曼树及其应用
7.4.1 哈夫曼树
7.4.2 哈夫曼编码
7.5 算法设计举例
7.6 习题
第8章 图
8.1 图的逻辑表示
8.1.1 图的定义
8.1.2 图的抽象数据类型
8.1.3 图的基本术语
8.2 图的存储表示与图的构造
8.2.1 邻接矩阵
8.2.2 邻接表
8.2.3 十字链表
8.2.4 邻接多重表
8.2.5 图的构造
8.3 遍历图
8.3.1 深度优先遍历
8.3.2 广度优先遍历
8.4 最小生成树
8.4.1 生成树
8.4.2 最小生成树
8.5 最短路径
8.5.1 单源最短路径
8.5.2 其他最短路径
8.6 拓扑排序
8.6.1 拓扑排序的定义
8.6.2 拓扑排序的操作
8.7 关键路径
8.7.1 关键路径的定义
8.7.2 关键路径的操作
8.8 算法设计举例
8.9 习题
第9章 排序
9.1 基本概念
9.2 插入排序
9.2.1 直接插入排序
9.2.2 希尔排序
9.3 交换排序
9.3.1 冒泡排序
9.3.2 快速排序
9.4 选择排序
9.4.1 直接选择排序
9.4.2 堆排序
9.5 归并排序
9.5.1 两路归并排序
9.5.2 分治法归并排序
9.6 基数排序
9.6.1 多关键字排序
9.6.2 链式基数排序
9.7 排序方法比较
9.8 算法设计举例
9.9 习题
第10章 查找
10.1 基本概念
10.2 静态查找
10.2.1 静态查找表的定义与表示
10.2.2 顺序查找
10.2.3 折半查找
10.2.4 分块查找
10.3 动态查找
10.3.1 动态查找表的定义与表示
10.3.2 二叉排序树
10.3.3 平衡二叉树
10.3.4 B-树
10.4 哈希查找
10.4.1 哈希表的定义与表示
10.4.2 哈希函数的构造方法
10.4.3 处理冲突的方法
10.4.4 哈希表上的基本操作
10.5 算法设计举例
10.6 习题
第11章 文件
11.1 基本概念
11.2 顺序文件
11.2.1 顺序文件的查找
11.2.2 顺序文件的修改
11.2.3 顺序文件的特点
11.3 索引文件
11.3.1 索引文件的分类
11.3.2 索引文件的存储
11.3.3 索引文件的操作
11.3.4 利用查找表建立多级索引
11.4 索引顺序文件
11.4.1 ISAM文件
11.4.2 VSAM文件
11.5 哈希文件
11.5.1 哈希文件的操作
11.5.2 哈希文件的特点
11.6 多关键字文件
11.6.1 多重表文件
11.6.2 倒排文件
11.7 文件综合举例
11.8 习题
参考文献