第1章 概述
1.1 引言
1.2 基本术语及概念
1.2.1 基本术语
1.2.2 数据结构
1.3 算法描述与算法分析
1.3.1 算法与算法描述
1.3.2 算法分析
小结
习题
第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 静态链表
小结
习题
实训指导
第3章 栈与队列
3.1 栈
3.1.1 栈的定义及基本运算
3.1.2 栈的顺序存储及运算
3.1.3 栈的链式存储及运算
3.1.4 栈的应用
3.2 队列
3.2.1 队列的定义及基本运算
3.2.2 队列的顺序存储及运算
3.2.3 队列的链式存储及运算
3.2.4 队列的应用
小结
习题
实训指导
第4章 串与数组
4.1 串
4.1.1 串的基本概念
4.1.2 串的存储结构
4.1.3 串运算的实现
4.2 数组
4.2.1 数组的定义和运算
4.2.2 数组的顺序存储和实现
4.2.3 特殊矩阵的压缩存储
小结
习题
实训指导
第5章 树与二叉树
5.1 树
5.2 二叉树
5.2.1 二叉树的定义
5.2.2 二叉树的性质
5.2.3 二叉树的存储结构
5.2.4 遍历二叉树
5.2.5 应用实例
5.3 树和森林
5.3.1 树的存储结构
5.3.2 树、森林与二叉树的转换
5.3.3 树和森林的遍历
5.4 最优二叉树——哈夫曼树
5.4.1 哈夫曼树的定义和构造方法.
5.4.2 哈夫曼编码
小结
习题
实训指导
第6章 图
6.1 图的基本概念
6.2 图的存储表示
6.2.1 图的邻接矩阵
6.2.2 邻接表
6.3 图的遍历
6.3.1 深度优先搜索
6.3.2 广度优先搜索
6.4 图的应用
6.4.1 生成树和最小生成树
6.4.2 最短路径
6.4.3 拓扑排序
小结
习题
实训指导
第7章 查找
7.1 查找的基本概念
7.2 静态查找表
7.2.1 顺序查找
7.2.2 折半查找
7.2.3 分块查找
7.3 动态查找表
7.3.1 二叉排序树
7.3.2 二叉排序树的插入和生成
7.3.3 二又排序树的删除
7.3.4 二叉排序树的查找
7.3.5 二叉排序树的查找性能
7.3.6 平衡二叉树
7.4 哈希表查找
7.4.1 哈希表与哈希查找
7.4.2 构造哈希函数的方法
7.4.3 处理冲突的方法
7.4.4 哈希表的查找分析
小结
习题
实训指导
第8章 排序
8.1 基本概念
8.2 插入排序
8.2.1 直接插入排序
8.2.2 希尔排序
8.3 交换排序
8.3.1 冒泡排序
8.3.2 快速排序
8.4 选择排序
8.4.1 简单选择排序
8.4.2 树形选择排序
8.4.3 堆排序
8.5 二路归并排序
8.6 基数排序
8.6.1 多关键字排序
8.6.2 链式基数排序
8.7 排序方法的比较
小结
习题
实训指导
参考文献