第1章 绪论 1
1.1数据结构的基本概念和术语 1
1.2数据的逻辑结构及存储结构 3
1.3抽象数据类型 6
1.4算法及算法设计原则 7
1.5数据结构中用到的部分C语言相关知识点 11
1.6 C基础知识实训 17
本章小结 18
课后习题 18
第2章 线性表 23
2.1线性表的定义和基本运算 23
2.2线性表的顺序存储和实现 25
2.3线性表的链式存储和实现 28
2.4顺序表与链表的比较 38
2.5线性表实训 39
本章小结 43
课后习题 44
第3章 栈 48
3.1栈的定义和运算 48
3.2栈的顺序存储和实现 49
3.3栈的链式存储和实现 54
3.4栈实训 57
本章小结 64
课后习题 64
第4章 队列 67
4.1队列的定义和运算 67
4.2队列的顺序存储和实现 68
4.3队列的链式存储结构和实现 73
4.4其他队列 75
4.5队列实训 77
本章小结 81
课后习题 81
第5章 串 86
5.1串的类型定义和运算 86
5.2串的存储结构 88
5.3串实训 93
5.4课程设计——大整数运算 98
本章小结 103
课后习题 104
第6章 多维数组 107
6.1多维数组 107
6.2特殊矩阵的压缩存储 108
6.3稀疏矩阵的压缩存储 111
6.4课程设计——稀疏矩阵的操作 114
本章小结 129
课后习题 130
第7章 树形结构 131
7.1树 131
7.2二叉树 134
7.3遍历二叉树 140
7.4二叉树的应用 144
7.5线索二叉树 146
7.6树和森林的存储结构及相关操作 148
7.7哈夫曼树及其应用 150
7.8树实训 154
7.9课程设计——家族关系查询系统 169
本章小结 178
课后习题 179
第8章 图形结构 181
8.1图的定义和基本运算 181
8.2图的存储结构 184
8.3图的遍历 188
8.4生成树与最小生成树 192
8.5最短路径 198
8.6拓扑排序 203
8.7关键路径 205
8.8图实训——图子系统 208
本章小结 213
课后习题 213
第9章 查找 218
9.1查找的基本概念 218
9.2线性表的查找 218
9.3树表的查找 223
9.4哈希表的查找 231
9.5查找实训——顺序、折半与哈希查找 235
本章小结 241
课后习题 241
第10章 排序 245
10.1排序的基本概念 245
10.2插入排序 246
10.3交换排序法 249
10.4选择排序 252
10.5归并排序 259
10.6基数排序 261
10.7内部排序方法比较与分析 263
10.8排序实训 264
本章小结 270
课后习题 271
参考文献 275