总序
前言
第一章 预备知识
1.1 程序设计概述
1.2 指针与结构体
1.3 文件操作
1.4 函数与模块化程序设计
1.5 本章小结
第二章 数据结构导论
2.1 概念与术语
2.2 抽象数据类型
2.3 算法概述
2.4 算法分析
2.5 本章小结
第三章 线性结构
3.1 线性表的定义
3.2 线性表的基本操作
3.3 线性结构的顺序表示方法
3.4 线性结构的链式表示方法
3.5 线性结构的深入
3.6 本章小结
第四章 栈和队列
4.1 栈的定义与基本操作
4.2 栈的表示与实现
4.3 栈的应用示例
4.4 队列定义与表示
4.5 队列基本操作
4.6 队列应用示例
4.7 递归应用示例
4.8 本章小结
第五章 串和数组
5.1 字符串定义与操作
5.2 字符串表示与实现
5.3 字符串的应用
5.4 字符串匹配算法
5.5 数组
5.6 矩阵的压缩存储
5.7 本章小结
第六章 树和二叉树
6.1 树的基本概念
6.2 二叉树的概念
6.3 二叉树的遍历和其他运算
6.4 线索二叉树
6.5 树和森林
6.6 哈夫曼树和哈夫曼编码
6.7 本章小结
第七章 图
7.1 图的基本概念
7.2 图的存储表示
7.3 图的遍历
7.4 最小生成树
7.5 拓扑排序
7.6 关键路径
7.7 最短路径
7.8 本章小结
第八章 查找算法
8.1 概述
8.2 静态查找
8.3 动态查找
8.4 哈希(Hash)查找
8.5 查找算法深入
8.6 本章小结
第九章 排序算法
9.1 概述
9.2 简单排序
9.3 快速排序
9.4 Shell排序
9.5 堆排序
9.6 归并排序
9.7 分配排序和基数排序
9.8 本章小结
第十章 文件结构
10.1 概述
10.2 顺序文件
10.3 索引文件
10.4 ISAM文件
10.5 散列文件
10.6 文件结构深入
10.7 本章小结
第十一章 算法设计策略
11.1 概述
11.2 分治策略
11.3 贪心策略
11.4 动态规划策略
11.5 回溯策略
11.6 分枝定界策略
11.7 本章小结
参考文献