挑战程序设计竞赛(第2版)
发布日期:2021-06-29 02:07:55
浏览次数:2
分类:技术文章
本文共 2622 字,大约阅读时间需要 8 分钟。
挑战程序设计竞赛(第2版)
下载地址
扫码下面二维码关注公众号回复 100157获取分享码
本书目录结构如下:
第1章 蓄势待发——准备篇 1
1.1 何谓程序设计竞赛 2 1.2 最负盛名的程序设计竞赛 5 1.2.1 世界规模的大赛——google code jam(gcj) 5 1.2.2 向高排名看齐!—— 5 1.2.3 历史最悠久的竞赛—— acm-icpc 6 1.2.4 面向中学生的信息学奥林匹克竞赛——joi-ioi 6 1.2.5 通过网络自动评测——online judge(oj) 6 1.3 本书的使用方法 7 1.3.1 本书所涉及的内容 7 1.3.2 所用的编程语言 7 1.3.3 题目描述的处理 7 1.3.4 程序结构 7 1.3.5 练习题 8 1.3.6 读透本书后更上一层楼的练习方法 8 1.4 如何提交解答 9 1.4.1 poj的提交方法 9 1.4.2 gcj的提交方法 11 1.5 以高效的算法为目标 15.1.5.1 什么是复杂度 15
1.5.2 关于运行时间 15 1.6 轻松热身 16 1.6.1 先从简单题开始 16 1.6.2 的题目ants 18 1.6.3 难度增加的抽签问题 20 第2章 初出茅庐——初级篇 25 2.1 最基础的“穷竭搜索” 26 2.1.1 26 2.1.2 栈 27 2.1.3 队列 28 2.1.4 29 2.1.5 33 2.1.6 特殊状态的枚举 37 2.1.7 剪枝 38 2.2 一往直前!贪心法 39 2.2.1 硬币问题 39 2.2.2 区间问题 40 2.2.3 最小问题 43 2.2.4 其他例题 45 2.3 记录结果再利用的“” 51 2.3.1 与动态规划 51 2.3.2 进一步探讨关系 57 2.3.3 有关计数问题的dp 66 2.4 加工并存储数据的数据结构 70 2.4.1 树和二叉树 70 2.4.2 和堆 71 2.4.3 77 2.4.4 84 2.5 它们其实都是“图” 91 2.5.1 图是什么 91 2.5.2 图的表示 94 2.5.3 图的搜索 97 2.5.4 99 2.5.5 105 2.5.6 应用问题 107 2.6 数学问题的解题窍门 113 2.6.1 113 2.6.2 有关素数的基础算法 117 2.6.3 121 2.6.4 运算 122 2.7 一起来挑战gcj的题目(1) 125 2.7.1 minimum scalar product 125 2.7.2 crazy rows 127 2.7.3 bribe the prisoners 129 2.7.4 millionaire 132 第3章 出类拔萃——中级篇 137 3.1 不光是查找值!“二分搜索” 138 3.1.1 从中查找某个值 138 3.1.2 假定一个解并判断是否可行 140 3.1.3 最大化最小值 142 3.1.4 最大化平均值 143 3.2 常用技巧精选(一) 146 3.2.1 尺取法 146 3.2.2 反转(开关问题) 150 3.2.3 弹性碰撞 158 3.2.4 折半枚举(双向搜索) 160 3.2.5 坐标 164 3.3 活用各种数据结构 167 3.3.1 167 3.3.2 binary indexed tree 174 3.3.3 分桶法和平方分割 183 3.4 熟练掌握 191 3.4.1 状态压缩dp 191 3.4.2 矩阵的幂 199 3.4.3 利用数据结构高效求解 206 3.5 借助水流解决问题的 209 3.5.1 最大流 209 3.5.2 212 3.5.3 217 3.5.4 一般图匹配 220 3.5.5 匹配、边覆盖、和顶点覆盖 221 3.5.6 最小费用流 222 3.5.7 应用问题 228 3.6 与平面和空间打交道的计算几何 250 3.6.1 计算几何基础 250 3.6.2 极限情况 255 3.6.3 平面扫描 258 3.6.4 260 3.6.5 263 3.7 一起来挑战gcj的题目(2) 267 3.7.1 numbers 267 3.7.2 no cheating 269 3.7.3 stock charts 271 3.7.4 watering plants 273 3.7.5 number sets 278 3.7.6 wi-fi towers 280 第4章 登峰造极——高级篇 285 4.1 更加复杂的数学问题 286 4.1.1 矩阵 286 4.1.2 模运算的世界 291 4.1.3 计数 295 4.1.4 具有对称性的计数 300 4.2 找出游戏的必胜策略 305 4.2.1 游戏与必胜策略 305 4.2.2 nim 311 4.2.3 grundy数 315 4.3 成为图论大师之路 320 4.3.1 分解 320 4.3.2 2-sat 324 4.3.3 lca 328 4.4 常用技巧精选(二) 335 4.4.1 栈的运用 335 4.4.2 的运用 337 4.4.3 倍增法 345 4.5 开动脑筋智慧搜索 350 4.5.1 剪枝 350 4.5.2 a*与ida* 356 4.6 划分、解决、合并: 359 4.6.1 数列上的分治法 359 4.6.2 树上的分治法 360 4.6.3 平面上的分治法 364 4.7 华丽地处理字符串 368 4.7.1 字符串上的算法 368 4.7.2 字符串匹配 373 4.7.3 378 4.8 一起来挑战gcj的题目(3) 387 4.8.1 mine layer 387 4.8.2 year of more code jam 392 4.8.3 football team 395 4.8.4 endless knight 399 4.8.5 the year of code jam 403 本书中未涉及的拓展主题 408 书中例题列表 411
转载地址:https://blog.csdn.net/yusongcao7/article/details/109527475 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月10日 00时26分20秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
TeamCenter12登陆报404/503问题解决
2019-04-29
Label.text赋值竟然报错“未将对象引用设置到对象的实例”
2019-04-29
TeamCenter12.0升级到12.3过程中ORA-01119: 创建数据库文件失败
2019-04-29
启动Solr提示Java版本低,无法启动的解决办法
2019-04-29
Kafka 集群环境搭建
2019-04-29
Zookeeper集群环境搭建
2019-04-29
Redis监控程序--RedisMonitor
2019-04-29
Redis-cluster 命令查看服务情况
2019-04-29
一条数据的HBase之旅
2019-04-29
Hbase2.1.5集群环境搭建
2019-04-29
Hbase一些问题点
2019-04-29
关于服务器在处理性能上的对比以及达到的速度
2019-04-29
深度探索MySQL主从复制原理
2019-04-29
关于Mysql的存储引擎Innodb和Myisam
2019-04-29
部标JT808协议处理方案
2019-04-29
WebSocket实现与原理
2019-04-29
Docker概述与安装使用
2019-04-29
Java Serializable:明明就一个空的接口嘛
2019-04-29
Dockerfile 文件命令详解
2019-04-29