ACMICPC算法训练教程.PDF
ACM/ICPC 算法训练教程
南京理工大学ACM/ICPC 集训队整理编辑
2010 年10 月
序
ACM 国际大学生程序设计竞赛(ACM/ICPC)是由国际计算机界历史悠久、颇具权威性
的组织ACM 学会主办,是世界上公认的规模最大、水平最高的国际大学生程序设计竞赛,
其目的旨在使大学生运用计算机来充分展示自已分析问题和解决问题的能力。因历届竞赛都
荟萃了世界各大洲的精英,云集了计算机界的“希望之星”,而受到国际各知名大学的重视,
并受到全世界各著名计算机公司的高度关注,成为世界各国大学生最具影响力的国际级计算
机类的赛事。
南京理工大学参与该项赛事八年,获得亚洲区银奖5 个,铜奖12 个。同时在训练中也
积累了一些训练的资料。南京理工大学ACM/ICPC 集训队根据多年训练积累,整理的
《ACM/ICPC 算法训练教程》适合ACM/ICPC 初学者,及具有一定基础的计算机算法和编
程爱好者。适合作为本科及研究生算法与数据结构类课程的参考教材。
本书资料全部来自南京理工大学ACM/ICPC 集训队内部资料。由张珂、张俊华等集训
队员负责整理。因成书仓促,错误在所难免,望批评指正。
余立功
2
目录
第一章 算法基础 1
1.1 穷举(枚举)法1
1.2 递归法 3
1.3 分治法 7
1.4 贪心法 11
1.5 模拟法 16
第二章:数据结构 19
2.1 引言 19
2.2 基本数据结构19
2.3 查找与排序22
2.4 并查集 28
2.5 堆(优先队列)31
2.6 Hash 表34
2.7 线段树 39
第三章 数论 47
3.1 和素数有关的问题47
3.1.1 素数基础47
3.1.2 素数问题举例48
3.2 最大公约数 欧几里得及扩展欧几里得算法 51
3.2.1 欧几里得与扩展欧几里得简介 51
3.2.2 欧几里得与扩展欧几里得举例 52
3.3 整数因子分解54
3.3.1 整数因子分解简介54
3.3.2 整数因子分解举例55
第四章 计算几何 60
4.1 计算几何的基础——矢量61
4.1.1 矢量基础61
4.2 确定任意一对线段是否相交70
4.3 寻找凸包 73
4.3.1 寻找凸包73
4.3.2 凸包举例78
4.4 寻找最近点对81
4.4.1 寻找最近点对方案81
第五章 图算法 86
5.1 引言 86
5.2 最小生成树86
5.2.1 Prim 算法 86
5.2.2 Kruskal 算法 90
5.3 最短路算法90
5.3.1 Dijkstra 算法 90
5.3.2 Bellman-Ford 算法 94
3
5.3.3 Floyd-Warshall 算法 95
5.4 无向图的连通性98
5.4.1 无向连通图割点和桥98
您可能关注的文档
- 2018年黑龙江教师招聘考试小学英语模拟卷二.PDF
- 2018广西商品交易会活动方案.PDF
- 2018海洋教育教案设计徵选办法.PDF
- 中央广播电视大学一村一名大学生计划园林技术专业.doc
- 2019-2020中一自行分配学位申请表格.PDF
- 中山大学2018年各招生单位考试招收硕士研究生招生计划.PDF
- 中山市锦成电镀有限公司改扩建项目环境影响.PDF
- 中山纪念堂古建筑保养维护修缮专项工程.doc
- 2019年黎明时尚设计系时尚设计教师研习营.PDF
- 中电国际姚孟发电超低排放奏响环保新篇章.doc
- 统编版2025年春季新版七年级下册历史 第21课 明清时期的科技与文化 教案.docx
- 雅安雨城法院书记员招聘考试真题库2025.docx
- 2026届安徽合肥市高考一模高考语文试卷试题(含答案详解).pdf
- 【专题研究】国内外城市更新研究的最新进展.pdf
- 【专题研究】老旧城区改造居民满意度影响因素研究——以遂宁市老旧城区改造为例.pdf
- 【专题研究】关于旧城空间改造理论与创意设计案例的几点思考.pdf
- 西藏拉萨市高三下学期期末物理备考重点详解.docx
- 泾县法院书记员招聘笔试真题2025.pdf
- 2026年春【苏教版】-六年级数学下册-面积的变化.pptx
- 2026年春【苏教版】-六年级数学下册-7.pptx
原创力文档

文档评论(0)