当前位置:首页 > 工业技术
ACM程序设计竞赛基础教程
ACM程序设计竞赛基础教程

ACM程序设计竞赛基础教程PDF电子书下载

工业技术

  • 电子书积分:10 积分如何计算积分?
  • 作 者:俞经善编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2010
  • ISBN:9787302234920
  • 页数:207 页
图书介绍:本书对计算机程序设计竞赛中基本题型和知识点进行了综合介绍,涵盖了基础算法、数据结构、字符串、搜索、图论、组合数学、计算集合和初等数论等知识点。
《ACM程序设计竞赛基础教程》目录

第1章 基础算法 1

1.1 分治 1

1.2 递归 3

1.3 枚举 5

1.4 贪心 7

第2章 排序、查找算法 9

2.1 基本排序算法 9

2.1.1 插入排序 9

2.1.2 冒泡排序 9

2.1.3 快速排序 10

2.1.4 其他排序 10

2.2 基本查找算法 11

2.2.1 顺序查找 11

2.2.2 折半查找 11

2.3 实例分析 12

2.4 小结 30

第3章 数据结构基础 31

3.1 常用数据结构简介 31

3.1.1 线段树简介 31

3.1.2 并查集简介 31

3.1.3 树状数组简介 31

3.2 实例分析 32

第4章 字符串 43

4.1 字符串匹配 43

4.1.1 朴素的字符串匹配算法 43

4.1.2 KMP算法 44

4.1.3 其他匹配算法 44

4.2 实例分析 44

4.3 小结 50

第5章 搜索算法 51

5.1 基本搜索算法 51

5.1.1 递归与迭代 51

5.1.2 深度优先搜索与广度优先搜索 51

5.1.3 回溯 51

5.2 搜索算法的一些优化 52

5.2.1 剪枝函数 52

5.2.2 双向广度搜索 52

5.3 实例分析 52

5.4 小结 67

第6章 图论算法 68

6.1 最短路径 68

6.1.1 Dijkstra算法 68

6.1.2 Floyd算法 69

6.1.3 Bellman-Ford算法 69

6.2 最小生成树 70

6.2.1 Kruskal算法 71

6.2.2 Prim算法 72

6.3 最大匹配——匈牙利算法 73

6.4 最优权匹配问题 74

6.4.1 理论基础 74

6.4.2 基本思想 75

6.4.3 样例代码 75

6.5 割点、割边以及连通分量 77

6.5.1 理论基础 77

6.5.2 求割点 78

6.5.3 求强连通分量 79

6.6 网络流 81

6.6.1 理论基础 81

6.6.2 最大流问题 81

6.6.3 最小费用最大流问题 83

6.7 实例分析 84

6.8 小结 106

第7章 动态规划算法 107

7.1 基本思想 109

7.2 基本概念 109

7.3 基本原理 110

7.3.1 最优化原理 110

7.3.2 无后效性 110

7.4 基本步骤 110

7.5 经典例子 111

7.6 实例分析 115

7.7 小结 135

第8章 计算几何基础 136

8.1 矢量 136

8.1.1 矢量的概念 136

8.1.2 矢量加减法 136

8.1.3 矢量叉积 136

8.1.4 矢量叉积的应用 136

8.2 包含关系 138

8.2.1 判断图形是否包含在矩形中 138

8.2.2 判断图形是否包含在多边形中 138

8.2.3 判断图形是否包含在圆中 141

8.3 凸包 141

8.3.1 凸包的概念 141

8.3.2 凸包的求法 141

8.4 实例分析 143

第9章 数论 160

9.1 基本数学算法 160

9.1.1 素数筛选 160

9.1.2 最大公约数 160

9.1.3 快速乘方 161

9.2 实例分析 161

附录A 综合训练题 186

A.1 LuckyBird 186

A.2 Josephus'problem 187

A.3 Counter Strike 189

A.4 Gauss Elimination 192

A.5 The Math Problem 193

A.6 Mobile phones 194

A.7 Japan 197

A.8 骨灰级玩家考证篇 199

A.9 括号匹配 202

A.10 食物链 204

相关图书
作者其它书籍
返回顶部