第1章 数据结构概论 1
1.1 本章重点 1
1.2 本章难点 1
1.3 求解鸡兔同笼问题实验解答 1
1.3.1 实验要求 1
1.3.2 参考答案 1
1.4 百钱买百鸡问题课程设计 3
1.4.1 设计要求 3
1.4.2 解答 3
1.5 评分标准 5
第2章 类和类模板基础 6
2.1 重点和难点 6
2.1.1 模板函数专门化和模板重载 6
2.1.2 类模板 8
2.1.3 在类中使用动态分配内存 9
2.2 多文件编程实验解答 10
2.2.1 实验题目 10
2.2.2 实验要求 10
2.2.3 实验解答 10
2.3 课程设计 13
2.3.1 在主程序中使用动态内存 14
2.3.2 将函数改为成员函数 17
2.3.3 在成员函数中使用动态内存 19
2.3.4 使用结构作为模板的数据类型 20
2.4 评分标准 22
第3章 线性表 23
3.1 本章重点 23
3.2 本章难点 23
3.2.1 使用类模板的学生信息链表 23
3.2.2 使用类的学生信息链表 26
3.3 实现一元多项式的加法运算实验解答 28
3.3.1 问题分析 28
3.3.2 算法解析 29
3.3.3 完整的源程序清单 31
3.3.4 程序运行测试 33
3.4 求解改进的约瑟夫环游戏课程设计 34
3.4.1 设计要求 34
3.4.2 设计思想 35
3.4.3 文件及函数组成 37
3.4.4 参考程序清单 39
3.4.5 运行示例 41
3.5 评价标准 42
第4章 栈和队列 43
4.1 本章重点 43
4.2 本章难点 46
4.3 栈和队列的特点 49
4.3.1 栈的特点 49
4.3.2 循环队列的特点 49
4.4 八皇后问题实验解答 49
4.4.1 设计思想 49
4.4.2 算法设计 50
4.4.3 算法扩充 52
4.4.4 完整的算法实现 52
4.5 模拟后缀表达式的计算过程课程设计 54
4.5.1 设计思想 54
4.5.2 设计类 54
4.5.3 参考程序 56
4.5.4 运行示例 60
4.6 评价标准 60
第5章 字符串 61
5.1 重点和难点 61
5.1.1 字符串的概念 61
5.1.2 顺序串 62
5.1.3 链串 62
5.1.4 串运算的实现 62
5.2 串运算实例 64
5.3 串模式匹配算法实验解答 66
5.3.1 朴素模式匹配算法 66
5.3.2 给定位置的串匹配算法 69
5.4 字符串课程设计 71
5.4.1 设计思想 71
5.4.2 设计String类 72
5.4.3 String类程序清单 75
5.5 评价标准 82
第6章 多维数组和广义表 83
6.1 重点和难点 83
6.1.1 多维数组 83
6.1.2 特殊矩阵 84
6.1.3 广义表 85
6.1.4 典型例题 85
6.2 稀疏矩阵的加法运算实验解答 91
6.2.1 实验题目 91
6.2.2 设计思想 92
6.2.3 完整的参考程序及运行示例 94
6.3 广义表课程设计 98
6.3.1 设计要求 98
6.3.2 广义表的存储结构 98
6.3.3 广义表的基本算法 99
6.3.4 算法实现 101
6.4 评分标准 107
第7章 树和二叉树 108
7.1 重点和难点 108
7.1.1 树的概念和术语 108
7.1.2 二叉树概述 108
7.1.3 二叉树的运算 109
7.1.4 线索二叉树 111
7.1.5 树和森林 113
7.1.6 哈夫曼树 114
7.2 二叉树的遍历与查找算法实验解答 116
7.2.1 实验题目和要求 116
7.2.2 参考答案 116
7.3 查找结点并显示该结点的层次和路径课程设计 122
7.3.1 设计要求 122
7.3.2 设计思想 122
7.3.3 参考程序 124
7.4 哈夫曼编码课程设计 125
7.4.1 设计要求 125
7.4.2 设计哈夫曼树的类 125
7.5 评分标准 130
第8章 图 131
8.1 重点和难点 131
8.1.1 图的基本术语 131
8.1.2 图的存储表示方式 132
8.1.3 图的基本运算 133
8.1.4 拓扑排序法 135
8.2 实现无向网络的最小生成树的普里姆算法实验解答 135
8.2.1 实验要求 135
8.2.2 参考答案 136
8.3 交通咨询系统课程设计 138
8.3.1 设计要求及分析 138
8.3.2 设计功能的实现 139
8.3.3 运行示例 142
8.4 评分标准 145
第9章 排序 146
9.1 重点和难点 146
9.1.1 排序的基本概念 146
9.1.2 各种排序方法比较 148
9.2 典型算法 148
9.2.1 插入排序 149
9.2.2 交换排序 149
9.2.3 使用单链表的直接选择排序 151
9.2.4 使用堆的直接选择排序 154
9.2.5 分配排序 155
9.3 堆排序实验解答 159
9.4 学生成绩处理课程设计 161
9.4.1 设计要求 161
9.4.2 设计思想 162
9.4.3 参考答案 162
9.5 评分标准 165
第10章 查找 166
10.1 重点和难点 166
10.1.1 顺序表查找 166
10.1.2 二叉排序树 170
10.1.3 散列表查找 173
10.2 二叉排序树实验解答 176
10.2.1 实验题目 176
10.2.2 参考答案 176
10.3 航班信息的查询与检索课程设计 177
10.3.1 设计要求 177
10.3.2 设计分析 177
10.3.3 参考程序 178
10.3.4 运行示例 181
10.4 评分标准 183
第11章 文件 184
11.1 重点和难点 184
11.1.1 文件的基本概念 184
11.1.2 常用的文件结构 185
11.2 文件实例 187
11.3 演示文件和重载实例 189
11.4 图书管理信息系统课程设计 190
11.4.1 设计要求 190
11.4.2 设计分析 191
11.4.3 程序清单 195
11.4.4 运行示例 212
11.5 评分标准 215
参考文献 216