前言 第1章 概论 1.1 引言 1.1.1 几个例子 1.1.2 数据结构的产生和发展 1.1.3 基本概念和术语 1.2 问题、算法和程序 1.2.1 问题 1.2.2 算法 1.2.3 程序 1.3 算法描述和分析 1.3.1 算法描述 1.3.2 算法分析 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.4.3 链栈的表示和实现 2.5 队列 2.5.1 队列的类型定义 2.5.2 顺序队列的表示和实现 2.5.3 链队的表示和实现 2.6 应用举例 2.7 小结 习题 第3章 串 3.1 概述 3.1.1 串的概念 3.1.2 串的基本操作 3.2 串的存储表示和操作算法 3.2.1 定长顺序存储表示 3.2.2 块链存储表示 3.2.3 堆分配存储表示 3.3 模式匹配 3.3.1 模式匹配的基本算法(BP算法) 3.3.2 模式匹配的改进算法(KMP算法) 3.4 应用举例 3.4.1 文本编辑 3.4.2 建立词索引表 3.5 小结 习题 第4章 数组和广义表 4.1 数组的定义、表示和实现 4.1.1 数组的定义 4.1.2 数组的表示 4.1.3 数组的实现 4.2 矩阵的压缩存储 4.2.1 特殊矩阵 4.2.2 稀疏矩阵 4.3 广义表的定义和表示 4.3.1 广义表的定义 4.3.2 广义表的存储结构 4.3.3 广义表的基本算法 4.4 小结 习题 第5章 树和二叉树 5.1 树的定义和术语 5.1.1 树的定义 5.1.2 树的基本术语 5.1.3 树的表示 5.1.4 树的遍历 5.2 二叉树 5.2.1 二叉树的定义 5.2.2 二叉树的重要性质 5.2.3 二叉树的存储结构 5.3 二叉树的遍历和线索二叉树 5.3.1 二叉树的遍历 5.3.2 线索二叉树 5.4 树和森林 5.4.1 树的存储结构 5.4.2 森林与二叉树的转换 5.4.3 森林的遍历 5.5 哈夫曼树及其应用 5.5.1 哈夫曼树 5.5.2 哈夫曼树的应用--哈夫曼编码 5.6 小结 习题 第6章 图 6.1 图的基本概念 6.1.1 图的定义 6.1.2 基本术语 6.2 图的表示和实现 6.2.1 邻接矩阵 6.2.2 邻接表 6.2.3 十字链表 6.2.4 邻接多重表 6.3 图的遍历 6.3.1 深度优先搜索 6.3.2 广度优先搜索 6.3.3 非连通图的遍历 6.4 应用举例 6.4.1 生成树 6.4.2 拓扑排序 6.4.3 关键路径 6.4.4 最短路径 6.5 小结 习题 第7章 排序 7.1 内部排序 7.1.1 简单排序 7.1.2 希尔排序 7.1.3 快速排序 7.1.4 归并排序 7.1.5 堆排序 7.1.6 基数排序 7.2 外部排序 7.2.1 外部排序方法 7.2.2 自然归并 7.2.3 多路平衡归并 7.2.4 置换-选择排序 7.2.5 最佳归并树 7.3 排序效益评估 7.4 小结 习题 第8章 查找 8.1 基本概念 8.1.1 查找的定义 8.1.2 基本术语 8.2 线性表的查找 8.2.1 顺序查找 8.2.2 二分查找 8.2.3 分块查找 8.3 树表的查找 8.3.1 二叉排序树和平衡二叉树 8.3.2 B树 8.3.3 键树 8.4 散列查找 8.4.1 散列表 8.4.2 散列函数的构造方法 8.4.3 处理冲突的方法 8.4.4 散列表的查找及分析 8.5 小结 习题 第9章 算法设计方法 9.1 递归与分治法 9.1.1 递归技术 9.1.2 分治法 9.2 回溯法 9.2.1 回溯法的基本思想 9.2.2 0-1背包问题 9.2.3 旅行售货员问题 9.2.4 n皇后问题 9.3 动态规划法 9.3.1 动态规划法的基本思想 9.3.2 计算矩阵连乘积 9.3.3 动态规划法的基本要素 9.4 贪心法 9.4.1 贪心法的基本思想 9.4.2 哈夫曼编码问题 9.4.3 贪心法与动态规划法的差异 9.5 分支限界法 9.5.1 分支限界法的基本思想 9.5.2 0-1背包问题 9.5.3 旅行售货员问题 9.6 小结 习题 第10章 高级专题 10.1 集合 10.1.1 集合的定义 10.1.2 字典 10.1.3 有序字典 10.1.4 优先队列 10.2 线性结构的扩展 10.2.1 自组织线性表 10.2.2 跳跃表 10.2.3 动态存储管理 10.3 树形结构的扩展 10.3.1 竞赛树 10.3.2 Trie树 10.3.3 伸展树 10.4 小结 习题 附录 数学预备知识 参考文献
|