《数据结构编程实验》吴永辉 | PDF下载|ePub下载
类别: 计算机
作者:
吴永辉
/
王建德
出版社: 机械工业出版社
副标题: 大学程序设计课程与竞赛训练教材
出版年: 2012-4-1
页数: 397
定价: 59.00元
ISBN: 9787111373957
出版社: 机械工业出版社
副标题: 大学程序设计课程与竞赛训练教材
出版年: 2012-4-1
页数: 397
定价: 59.00元
ISBN: 9787111373957
内容简介 · · · · · ·
本书以知识体系结构和思维方式两个方面作为主线,分成四大篇14章介绍了基本能力的编程实验(基础)、线性数据结构的编程实验(线性表)、层次类非线性表的编程实验(树)以及群聚类非线性表的编程实验(图),并将“排序”和“搜索”的内容融合到相关章节中。每章节由实验范例和题库两个部分组成,试题全部选自ACM国际大学生程序设计竞赛和其他程序设计竞赛,共204题,并给出了试题来源和在线测试地址。每个实验范例不仅有详尽的知识要点阐述和试题解析,而且列出了写有详细注释的参考程序;而题库中的所有试题无论难易,都有清晰的提示。本书还附带了存储所有试题的英文原版描述和大部分试题的测试数据等资料的光盘。
本书的实验范例部分可以作为程序设计语言和数据结构的实验教材,供大学教学使用;题库部分则可以作为计算机专业学生的研修资料和程序设计竞赛的培训教材。
作者简介 · · · · · ·
吴永辉,博士,复旦大学计算机科学与工程系副教授,ACM-ICPC中国赛区指导委员会(ACM-ICPC Council China)成员,复旦大学ACM程序设计竞赛队教练。作者自2001年起连续带队进入ACM-ICPC世界总决赛,并取得过世界第6名的佳绩。他的主要研究方向为数据库,在《计算机研究与发展》、《软件学报》以及重大学术会议上发表过多篇论文,参与翻译出版了《数据通信与网络》和《数据通信、计算机网络与开放系统》。
王建德,著名的信息学奥林匹克竞赛金牌教练,国务院特殊津贴专家,中学特级教师。他所辅导的学生在国际奥林匹克信息学竞赛(IOI)中获7金、3银、2铜的优异成绩,先后出版了24本关于程序设计和算法的学术专著,其中《实用算法的分析与程序设计》广受好评,长期以来是国内各类程序设计竞赛的必备教程。
目录 · · · · · ·
前言
第一篇 基本能力的编程实验
第1章 简单计算的编程实验 2
1.1 改进程序书写风格的实验范例 2
1.2 正确处理多组测试数据的实验范例 4
1.3 提高实数精度的实验范例 7
1.4 使用二分法提高计算时效的实验范例 8
1.5 相关题库 13
第2章 简单模拟的编程实验 23
2.1 直叙式模拟的实验范例 23
2.2 筛选法模拟的实验范例 26
2.3 构造法模拟的实验范例 28
2.4 相关题库 30
第3章 简单递归的编程实验 36
3.1 计算递归函数的实验范例 36
3.2 用递归算法求问题解的实验范例 37
3.3 求解递归数据的实验范例 40
3.4 相关题库 42
本篇小结 46
第二篇 线性数据结构的编程实验
第4章 应用直接存取类线性表编程 48
4.1 数组应用一:日期计算的实验
范例 48
4.2 数组应用二:高精度运算的实验范例 54
4.3 数组应用三:多项式表示与处理的实验范例 60
4.4 数组应用四:数值矩阵运算的实验范例 65
4.5 字符串处理一:串的存储结构的实验范例 70
4.6 字符串处理二:串模式匹配的实验范例 71
4.7 相关题库 77
第5章 应用顺序存取类线性表编程 112
5.1 顺序表应用的实验范例 112
5.2 栈应用的实验范例 118
5.3 队列应用的实验范例 124
5.4 相关题库 134
第6章 应用广义索引类线性表编程 141
6.1 使用词典解题的实验范例 141
6.2 使用散列表与散列方法解题的实验范例 148
6.3 相关题库 154
第7章 应用线性表排序编程 160
7.1 利用STL中自带的排序功能编程的实验范例 160
7.2 应用排序算法编程的实验范例 166
7.3 相关题库 169
本篇小结 190
第三篇 层次类非线性表的编程实验
第8章 采用树结构的非线性表编程 192
8.1 用树的遍历求解层次性问题的实验范例 192
8.2 用树结构支持并查集的实验范例 201
8.3 用树状数组统计子树权和的实验范例 207
8.4 相关题库 211
第9章 应用二叉树的基本概念编程 231
9.1 普通有序树转化为二叉树的实验范例 231
9.2 计算二叉树路径的实验范例 234
9.3 通过遍历确定二叉树结构的实验范例 237
9.4 相关题库 239
第10章 应用经典二叉树编程 243
10.1 二叉搜索树的实验范例 243
10.2 二叉堆的实验范例 248
10.3 哈夫曼树的实验范例 259
10.4 相关题库 262
本篇小结 275
第四篇 群聚类非线性表的编程实验
第11章 应用图的遍历算法编程 278
11.1 BFS算法的实验范例 278
11.2 DFS算法的实验范例 282
11.3 拓扑排序的实验范例 285
11.4 计算无向图的连通性的实验范例 291
11.5 相关题库 299
第12章 应用最小生成树算法编程 327
12.1 Kruskal算法的实验范例 327
12.2 Prim算法的实验范例 330
12.3 相关题库 333
第13章 应用最佳路径算法编程 341
13.1 Warshall算法和Floyed-Warshall算法的实验范例 341
13.2 Dijkstra算法的实验范例 347
13.3 Bellman-Ford算法的实验范例 351
13.4 SPFA算法的实验范例 356
13.5 相关题库 360
第14章 应用特殊图的经典算法编程 368
14.1 二分图匹配的实验范例 368
14.2 计算网络最大流的实验范例 371
14.3 相关题库 385
本篇小结 396
· · · · · ·
第一篇 基本能力的编程实验
第1章 简单计算的编程实验 2
1.1 改进程序书写风格的实验范例 2
1.2 正确处理多组测试数据的实验范例 4
1.3 提高实数精度的实验范例 7
1.4 使用二分法提高计算时效的实验范例 8
1.5 相关题库 13
第2章 简单模拟的编程实验 23
2.1 直叙式模拟的实验范例 23
2.2 筛选法模拟的实验范例 26
2.3 构造法模拟的实验范例 28
2.4 相关题库 30
第3章 简单递归的编程实验 36
3.1 计算递归函数的实验范例 36
3.2 用递归算法求问题解的实验范例 37
3.3 求解递归数据的实验范例 40
3.4 相关题库 42
本篇小结 46
第二篇 线性数据结构的编程实验
第4章 应用直接存取类线性表编程 48
4.1 数组应用一:日期计算的实验
范例 48
4.2 数组应用二:高精度运算的实验范例 54
4.3 数组应用三:多项式表示与处理的实验范例 60
4.4 数组应用四:数值矩阵运算的实验范例 65
4.5 字符串处理一:串的存储结构的实验范例 70
4.6 字符串处理二:串模式匹配的实验范例 71
4.7 相关题库 77
第5章 应用顺序存取类线性表编程 112
5.1 顺序表应用的实验范例 112
5.2 栈应用的实验范例 118
5.3 队列应用的实验范例 124
5.4 相关题库 134
第6章 应用广义索引类线性表编程 141
6.1 使用词典解题的实验范例 141
6.2 使用散列表与散列方法解题的实验范例 148
6.3 相关题库 154
第7章 应用线性表排序编程 160
7.1 利用STL中自带的排序功能编程的实验范例 160
7.2 应用排序算法编程的实验范例 166
7.3 相关题库 169
本篇小结 190
第三篇 层次类非线性表的编程实验
第8章 采用树结构的非线性表编程 192
8.1 用树的遍历求解层次性问题的实验范例 192
8.2 用树结构支持并查集的实验范例 201
8.3 用树状数组统计子树权和的实验范例 207
8.4 相关题库 211
第9章 应用二叉树的基本概念编程 231
9.1 普通有序树转化为二叉树的实验范例 231
9.2 计算二叉树路径的实验范例 234
9.3 通过遍历确定二叉树结构的实验范例 237
9.4 相关题库 239
第10章 应用经典二叉树编程 243
10.1 二叉搜索树的实验范例 243
10.2 二叉堆的实验范例 248
10.3 哈夫曼树的实验范例 259
10.4 相关题库 262
本篇小结 275
第四篇 群聚类非线性表的编程实验
第11章 应用图的遍历算法编程 278
11.1 BFS算法的实验范例 278
11.2 DFS算法的实验范例 282
11.3 拓扑排序的实验范例 285
11.4 计算无向图的连通性的实验范例 291
11.5 相关题库 299
第12章 应用最小生成树算法编程 327
12.1 Kruskal算法的实验范例 327
12.2 Prim算法的实验范例 330
12.3 相关题库 333
第13章 应用最佳路径算法编程 341
13.1 Warshall算法和Floyed-Warshall算法的实验范例 341
13.2 Dijkstra算法的实验范例 347
13.3 Bellman-Ford算法的实验范例 351
13.4 SPFA算法的实验范例 356
13.5 相关题库 360
第14章 应用特殊图的经典算法编程 368
14.1 二分图匹配的实验范例 368
14.2 计算网络最大流的实验范例 371
14.3 相关题库 385
本篇小结 396
· · · · · ·
发表回复
要发表评论,您必须先登录。