挑战程序设计竞赛(第2版)pdf

图书网 2022年10月29日23:36:29
评论
912

挑战程序设计竞赛 作者:[日]秋叶拓哉 / [日]岩田阳一 / [日]北川宜稔 译:巫泽俊 庄俊元 李津羽

挑战程序设计竞赛 出版社:人民邮电出版社

挑战程序设计竞赛 内容简介

世界顶级程序设计高手的经验总结

【ACM-ICPC全球总冠军】巫泽俊主译

日本ACM-ICPC参赛者人手一册

本书对程序设计竞赛中的基础算法和经典问题进行了汇总,分为准备篇、初级篇、中级篇与高级篇4章。作者结合自己丰富的参赛经验,对严格筛选的110 多道各类试题进行了由浅入深、由易及难的细致讲解,并介绍了许多实用技巧。每章后附有习题,供读者练习,巩固所学。

本书适合程序设计人员、程序设计竞赛爱好者以及高校计算机专业师生阅读。

《挑战程序设计竞赛(第2版)》是2013年人民邮电出版社出版发行的图书,作者是秋叶拓哉 ,岩田阳一,北川宜稔。

挑战程序设计竞赛 给读者的话

既有理论,又侧重实践,非常有利于学习算法。在DP这里有时候一道题想二三十分钟。。。感觉还有论述的余地。。。选一些问题写成博客吧。。认认真真读到100多页,然后发现真的蛮难,然后趁着休息时间仔细想了想做这个的价值所在。没错,算法很重要,但这样极端的ACM题目,非得都做好了才能去实际编码么?实际编码时难道就学不到吗?对,实际做的时候才学,会导致手忙脚乱而且没有学习方向,但这也不意味着全部学完了才能实际做。想想数学建模。ACM对目前的我来说,是加分项,不应该是主要的。完成该做的事,然后有足够的休息,再有空闲,则做做ACM或者其他的才是顺理成章。另外ACM要用的东西,在你真正的工作里也不是不使用。认真做手头的事,有价值的东西在过程中会出现的。

挑战程序设计竞赛 目录

译者序

前言

第1章 蓄势待发——准备篇

1.1  何谓程序设计竞赛

1.2  最负盛名的程序设计竞赛

1.2.1  世界规模的大赛——Google Code Jam(GCJ)

1.2.2  向高排名看齐!——TopCoder

1.2.3  历史最悠久的竞赛—— ACM-ICPC

1.2.4  面向中学生的信息学奥林匹克竞赛——JOI-IOI

1.2.5  通过网络自动评测——Online Judge(OJ)

1.3  本书的使用方法

1.3.1  本书所涉及的内容

1.3.2  所用的编程语言

1.3.3  题目描述的处理

1.3.4  程序结构

1.3.5  练习题

1.3.6  读透本书后更上一层楼的练习方法

1.4  如何提交解答

1.4.1  POJ的提交方法

1.4.2  GCJ的提交方法

1.5  以高效的算法为目标

1.5.1  什么是复杂度

1.5.2  关于运行时间

1.6  轻松热身

1.6.1  先从简单题开始

1.6.2  POJ的题目Ants

1.6.3  难度增加的抽签问题

阅读

第2章 初出茅庐——初级篇

2.1  最基础的“穷竭搜索”

2.1.1  递归函数

2.1.2  栈

2.1.3  队列

2.1.4  深度优先搜索

2.1.5  宽度优先搜索

2.1.6  特殊状态的枚举

2.1.7  剪枝

2.2  一往直前!贪心法

2.2.1  硬币问题

2.2.2  区间问题

2.2.3  字典序最小问题

2.2.4  其他例题

2.3  记录结果再利用的“动态规划”

2.3.1  记忆化搜索与动态规划

2.3.2  进一步探讨递推关系

2.3.3  有关计数问题的DP

2.4  加工并存储数据的数据结构

2.4.1  树和二叉树

2.4.2  优先队列和堆

2.4.3  二叉搜索树

2.4.4  并查集

2.5  它们其实都是“图”

2.5.1  图是什么

2.5.2  图的表示

2.5.3  图的搜索

2.5.4  最短路问题

2.5.5  最小生成树

2.5.6  应用问题

2.6  数学问题的解题窍门

2.6.1  辗转相除法

2.6.2  有关素数的基础算法

2.6.3  模运算

2.6.4  快速幂运算

2.7  一起来挑战GCJ的题目(1)

2.7.1  Minimum Scalar Product

2.7.2  Crazy Rows

2.7.3  Bribe the Prisoners

2.7.4  Millionaire

阅读

第3章 出类拔萃——中级篇

3.1  不光是查找值!“二分搜索”

3.1.1  从有序数组中查找某个值

3.1.2  假定一个解并判断是否可行

3.1.3  最大化最小值

3.1.4  最大化平均值

3.2  常用技巧精选(一)

3.2.1  尺取法

3.2.2  反转(开关问题)

3.2.3  弹性碰撞

3.2.4  折半枚举(双向搜索)

3.2.5  坐标离散化

3.3  活用各种数据结构

3.3.1  线段树

3.3.2  Binary Indexed Tree

3.3.3  分桶法和平方分割

3.4  熟练掌握动态规划

3.4.1  状态压缩DP

3.4.2  矩阵的幂

3.4.3  利用数据结构高效求解

3.5  借助水流解决问题的网络流

3.5.1  最大流

3.5.2  最小割

3.5.3  二分图匹配

3.5.4  一般图匹配

3.5.5  匹配、边覆盖、独立集和顶点覆盖

3.5.6  最小费用流

3.5.7  应用问题

3.6  与平面和空间打交道的计算几何

3.6.1  计算几何基础

3.6.2  极限情况

3.6.3  平面扫描

3.6.4  凸包

3.6.5  数值积分

3.7  一起来挑战GCJ的题目(2)

3.7.1  Numbers

3.7.2  No Cheating

3.7.3  Stock Charts

3.7.4  Watering Plants

3.7.5  Number Sets

3.7.6  Wi-fi Towers

第4章 登峰造极——高级篇

4.1  更加复杂的数学问题

4.1.1  矩阵

4.1.2  模运算的世界

4.1.3  计数

4.1.4  具有对称性的计数

4.2  找出游戏的必胜策略

4.2.1  游戏与必胜策略

4.2.2  Nim

4.2.3  Grundy数

4.3  成为图论大师之路

4.3.1  强连通分量分解

4.3.2  2-SAT

4.3.3  LCA

4.4  常用技巧精选(二)

4.4.1  栈的运用

4.4.2  双端队列的运用

4.4.3  倍增法

4.5  开动脑筋智慧搜索

4.5.1  剪枝

4.5.2  A*与IDA*

4.6  划分、解决、合并:分治法

4.6.1  数列上的分治法

4.6.2  树上的分治法

4.6.3  平面上的分治法

4.7  华丽地处理字符串

4.7.1  字符串上的动态规划算法

4.7.2  字符串匹配

4.7.3  后缀数组

4.8  一起来挑战GCJ的题目(3)

4.8.1  Mine Layer

4.8.2  Year of More Code Jam

4.8.3  Football Team

4.8.4  Endless Knight

4.8.5  The Year of Code Jam

阅读

本书中未涉及的拓展主题

书中例题列表

参考文献

挑战程序

资源下载此资源仅限注册用户下载,请先登录
声明:本站所有资源收集于网络,只做学习和交流使用,版权归著作人和出版社所有,请在下载后24小时之内自觉删除,若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,与本站无关。本站发布的内容若侵犯到您的权益,请联系站长删除,我们将及时处理!

azw3、mobi等格式推荐使用稻壳阅读器阅读=>阅读器详情http://www.ziliaoh.com/dkydq.html

继续阅读

→→→→→→→→→→→→→→→→→→→→查找获取

数学

吴军:你最喜欢的数字是什么?《数学之美》PDF

数学之美 作者:吴军 数学之美 出版:人民邮电出版社 数学之美 内容简介 你最喜欢的数字是什么?几年前,“数学之美”系列文章原刊载于谷歌黑板报,获得上百万次点击,得到读者高度评价。读者说,读了“数学之...
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: