第一部分 实验指导 1
第一章 实验规范指导 1
1.1 基于计算思维的数据结构实验教学 1
1.2 本书实验安排 2
1.3 实验步骤 3
第二章 线性表及其应用 6
2.1 实验目的 6
2.2 实验指导 6
2.2.1 顺序表的应用 6
2.2.2 单链表的应用 9
2.2.3 约瑟夫环问题 14
2.2.4 狐狸逮兔子实验 17
2.3 实验题 19
第三章 栈与队列及其应用 21
3.1 实验目的 21
3.2 实验指导 21
3.2.1 顺序栈的基本操作实现 21
3.2.2 链栈的基本操作实现 25
3.2.3 循环队列的基本操作实现 28
3.2.4 后缀表达式求值 30
3.2.5 八皇后问题 34
3.2.6 模拟服务台前的排队问题 37
3.3 实验题 40
第四章 串、数组及其应用 42
4.1 实验目的 42
4.2 实验指导 42
4.2.1 串基本操作的实现 42
4.2.2 用三元组表实现稀疏矩阵的基本操作 46
4.2.3 KMP算法的实现 49
4.2.4 输出魔方阵 51
4.3 实验题 55
第五章 树、图及其应用 56
5.1 实验目的 56
5.2 实验指导 56
5.2.1 二叉树的基本运算实现 56
5.2.2 图遍历的演示 60
5.2.3 电文的编码和译码 63
5.2.4 拓扑排序实验 68
5.3 实验题 75
第六章 查找、排序及其应用 77
6.1 实验目的 77
6.2 实验指导 77
6.2.1 静态查找表 77
6.2.2 动态查找表 80
6.2.3 哈希表的设计 82
6.2.4 不同排序算法的比较 86
6.3 实验题 92
第二部分 学习指导 93
第一章 绪论 93
1.1 基本知识点 93
1.2 习题解析 93
1.3 自测题及参考答案 98
第二章 线性表 100
2.1 基本知识点 100
2.2 习题解析 101
2.3 自测题及参考答案 123
第三章 栈与队列 127
3.1 基本知识点 127
3.2 习题解析 127
3.3 自测题及参考答案 133
第四章 串 135
4.1 基本知识点 135
4.2 习题解析 135
4.3 自测题及参考答案 139
第五章 数组和广义表 141
5.1 基本知识点 141
5.2 习题解析 141
5.3 自测题及参考答案 147
第六章 二叉树与树 149
6.1 基本知识点 149
6.2 习题解析 150
6.3 自测题及参考答案 160
第七章 图 162
7.1 基本知识点 162
7.2 习题解析 163
7.3 自测题及参考答案 174
第八章 查找表 176
8.1 基本知识点 176
8.2 习题解析 176
8.3 自测题及参考答案 183
第九章 排序 186
9.1 基本知识点 186
9.2 习题解析 186
9.3 自测题及参考答案 193
附录一 硕士研究生入学考试试题及答案(一) 196
附录二 硕士研究生入学考试试题及答案(二) 203
参考文献 210