《C语言版的数据结构》是一本系统介绍数据结构原理及其在C语言中实现的经典教材,适合计算机专业学生和编程爱好者阅读。
第1章 绪论
1.1 数据结构的定义
1.2 基本概念和术语
1.3 抽象数据类型的表示与实现
1.4 算法及其分析
第2章 线性表
2.1 线性表类型定义
2.2 顺序存储方式及其实现
2.3 链式存储结构和其应用
2.4 多项式的表示与加法运算
第3章 栈和队列
3.1 栈的基本概念
3.2 应用实例
3.3 使用栈实现递归算法
3.4 队列的定义及特性
3.5 离散事件模拟
第4章 串处理
4.1 定义
4.2 表示方法与实现细节
4.3 模式匹配算法
4.4 应用实例分析
第5章 数组和广义表
5.1 数组定义
5.2 顺序存储方式及其应用
5.3 矩阵压缩存储技术
5.4 广义表的定义与实现
5.5 m元多项式的表示方法
5.6 广义表递归算法设计
第6章 树和二叉树
6.1 定义及术语
6.2 二叉树
- 定义
- 性质
- 存储结构
6.3 遍历与线索化
- 遍历方法
- 线索二叉树介绍
6.4 树和森林的表示及遍历
6.5 应用实例:等价问题
6.6 赫夫曼编码及其应用
- 最优二叉树定义
- 编码原理
6.7 回溯法与遍历方法
6.8 树的数量计算
第7章 图论
7.1 定义和术语
7.2 存储结构
- 数组表示
- 邻接表
- 十字链表
- 多重邻接表
7.3 深度优先遍历与广度优先遍历
7.4 连通性问题
无向图连通分量和生成树
有向图强连通分量
最小生成树算法
关键节点及重连通域
7.5 有向无环图及其应用
- 拓扑排序
- 关键路径分析
7.6 最短路径问题
单源最短路径与多对多最短路径
第8章 动态存储管理
8.1 简介
8.2 可用空间表及分配策略
8.3 边界标识法
- 表结构描述
- 分配算法
- 回收机制
8.4 伙伴系统
- 结构定义
- 分配与回收逻辑
8.5 内存碎片整理
8.6 紧凑存储优化策略
第9章 查找技术
9.1 静态查找表
- 序列结构中的查找
- 有序列表的搜索
- 树形静态数据结构查询
- 指示顺序文件检索
9.2 动态查找表
- 排序二叉树和平衡排序二叉树
- B-树与B+树
- 键值索引技术
9.3 哈希表的原理及应用
什么是哈希表
构造函数方法
冲突解决策略
性能分析
第10章 内部排序算法
10.1 概述
10.2 插入排序
- 直接插入
- 其他变种
- 希尔改进法
10.3 快速排序机制
10.4 选择性排序方法
简单选择算法
树形选择策略
堆优化排序
10.5 归并排序过程
10.6 多关键字基数排序
- 排序原理
- 链式基数法
10.7 各类内部排序方法对比
第11章 外部排序算法
11.1 磁盘信息存取方式
11.2 主要外部排序策略
混合归并
选择置换
最