第一篇 学习指导与习题解答第1章 概论 3
1.1 学习指导 3
1.1.1 基本知识点 3
1.1.2 要点分析 4
1.2 习题参考解答 5
1.2.1 填空题 5
1.2.2 选择题 5
1.2.3 简答题 6
1.2.4 算法分析题 7
第2章 线性表 8
2.1 学习指导 8
2.1.1 基本知识点 8
2.1.2 要点分析 9
2.2 习题参考解答 10
2.2.1 简答题 10
2.2.2 算法设计题 11
第3章 栈和队列 16
3.1 学习指导 16
3.1.1 基本知识点 16
3.1.2 要点分析 17
3.2 习题参考解答 18
3.2.1 填空题 18
3.2.2 选择题 19
3.2.3 算法分析题 20
3.2.4 算法设计题 21
第4章 串 26
4.1 学习指导 26
4.1.1 基本知识点 26
4.1.2 要点分析 27
4.2 习题参考解答 28
4.2.1 填空题 28
4.2.2 选择题 28
4.2.3 辨析题 29
4.2.4 算法设计题 29
第5章 数组和广义表 32
5.1 学习指导 32
5.1.1 基本知识点 32
5.1.2 要点分析 33
5.2 习题参考解答 33
5.2.1 基础知识题 33
5.2.2 算法设计题 35
第6章 树和二叉树 38
6.1 学习指导 38
6.1.1 基本知识点 38
6.1.2 要点分析 41
6.2 习题参考解答 43
6.2.1 填空题 43
6.2.2 选择题 44
6.2.3 应用题 45
第7章 图 49
7.1 学习指导 49
7.1.1 基本知识点 49
7.1.2 要点分析 52
7.2 习题参考解答 52
7.2.1 名词解释题 52
7.2.2 判断题 52
7.2.3 填空题 53
7.2.4 选择题 54
7.2.5 综合题 55
第8章 查找 65
8.1 学习指导 65
8.1.1 基本知识点 65
8.1.2 要点分析 66
8.2 习题参考解答 67
8.2.1 填空题 67
8.2.2 选择题 67
8.2.3 简答题 67
8.2.4 算法设计题 70
第9章 排序 73
9.1 学习指导 73
9.1.1 基本知识点 73
9.1.2 要点分析 73
9.2 习题参考解答 74
9.2.1 选择题 74
9.2.2 填空题 75
9.2.3 应用题 76
9.2.4 算法设计题 79
第二篇 数据结构实验第10章 数据结构实验概述 85
10.1 实验教学的目的 85
10.2 实验教学的主要内容 85
10.3 实验步骤 86
10.4 实验报告示例 88
第11章 数据结构实验安排 92
11.1 线性表(实验1) 92
11.2 栈和队列(实验2) 100
11.3 树和二叉树(实验3) 117
11.4 图(实验4) 124
11.5 查找(实验5) 131
11.6 排序(实验6) 142
第三篇 数据结构课程设计第12章 数据结构课程设计概述 151
12.1 课程设计的目的 151
12.2 课程设计的时间安排 152
12.3 课程设计的指导教师 152
12.4 课程设计的选题内容和要求 152
12.5 课程设计的实施步骤 153
12.6 课程设计总结报告的撰写规范 153
12.7 课程设计的上交材料 154
12.8 课程设计的成绩评定 154
第13章 数据结构课程设计安排 155
13.1 线性表(课程设计1) 155
13.1.1 顺序表的就地逆置 155
13.1.2 单链表的就地逆置 159
13.2 栈(课程设计2) 162
13.2.1 用栈逆置一个单链表 165
13.2.2 共享栈的设计 168
13.3 队列(课程设计3) 169
13.4 树和二叉树(课程设计4) 176
13.4.1 二叉树的生成 176
13.4.2 最优二叉树(哈夫曼树)的建立 179
13.5 图(课程设计5) 182
13.6 查找(课程设计6) 188
13.6.1 基础知识 188
13.6.2 课程设计 189
13.7 排序(课程设计7) 194
13.8 大型作业题(课程设计8) 207
13.9 数据结构课程设计补充题目 210
第14章 数据结构课程设计案例 214
14.1 设计要求 214
14.2 设计分析 215
14.3 设计的实现 220
14.4 测试运行实例 229
14.4.1 主控菜单的设计 229
14.4.2 测试运行实例 231
附录A “共享栈的设计”参考程序 237
附录B 树和二叉树(课程设计4)的部分参考程序 242
附录C 图(课程设计5)的部分参考程序 252
附录D 查找(课程设计6)的参考程序 259
参考文献 267