❶ 《挑战编程技能57道程序员功力测试题》pdf下载在线阅读,求百度网盘云资源
《挑战编程技能57道程序员功力测试题》BrianP.Hogan电子书网盘下载免费在线阅读
链接: https://pan..com/s/1NDJgpK5foeux3FcGWRBq6A
书名:挑战编程技能 57道程序员功力测试题
作者名:BrianP.Hogan
出版社:人民邮电出版社
出版年份:2017年01月
内容介绍:
新手程序员在具备了理论基础后,面对实际项目时往往不知道如何解决问题; 有经验的程序员在学习了一门新语言后,也会有很多不知道如何使用的特性。针对 程序员的这一普遍困惑,知名软件工程师Brian P. Hogan 在这本书中总结了57 道练习 题,帮助他们锤炼技能。这些练习题均取自实践,难度会逐渐增加,使得编程训练 充满挑战又乐趣多多。
❷ 挑战程序设计竞赛(第2版)的目录
《挑战程序设计竞赛(第2版)》
第1章蓄势待发——准备篇1 1.1 何谓程序设计竞赛2 1.2 最负盛名的程序设计竞赛5 1.2.1 世界规模的大赛——google code jam(gcj)5 1.2.2 向高排名看齐!——topcoder5 1.2.3 历史最悠久的竞赛—— acm-icpc6 1.2.4 面向中学生的信息学奥林匹克竞赛——joi-ioi6 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 poj的题目ants18 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 有关计数问题的dp66 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 proct125 2.7.2 crazy rows127 2.7.3 bribe the prisoners129 2.7.4 millionaire132 第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 tree174 3.3.3 分桶法和平方分割183 3.4 熟练掌握动态规划191 3.4.1 状态压缩dp191 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 numbers267 3.7.2 no cheating269 3.7.3 stock charts271 3.7.4 watering plants273 3.7.5 number sets278 3.7.6 wi-fi towers280 第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 nim311 4.2.3 grundy数315 4.3 成为图论大师之路320 4.3.1 强连通分量分解320 4.3.2 2-sat324 4.3.3 lca328 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 layer387 4.8.2 year of more code jam392 4.8.3 football team395 4.8.4 endless knight399 4.8.5 the year of code jam403 本书中未涉及的拓展主题408 书中例题列表411 参考文献413
❸ 挑战程序设计竞赛(第2版)的图书前言
如今,形形色色的程序设计竞赛层出不穷,听说过Google Code Jam、TopCoder、ACM-ICPC的读者恐怕不在少数。本书要介绍的正是这类以在规定时间内、又快又准地解决尽可能多的题目为目标的程序设计竞赛。 程序设计竞赛内涵丰富,即便是经验老道的程序员,要想在比赛中取得好成绩也绝非易事。要在程序设计竞赛中取胜,不仅需要运用灵活的想象和丰富的知识得出正确的算法,还需要一气呵成地实现并调试通过。 另一方面,程序设计竞赛对新手而言亦非遥不可及。为了让更多的参赛选手体会到比赛的乐趣,大多数比赛都会准备若干面向初学者的题目。另外,即便未能在比赛中取得好成绩,通过比赛,也能够使自己的能力得到有效的锻炼。最重要的是,大家能够享受到激烈的比赛带来的乐趣。 本书的作者们参加过众多程序设计竞赛,在平时的练习和学习中,也获得了各种各样的知识与技巧,本书将这些知识技巧总结成册,主要介绍算法及其在相关问题中的应用。本书依照由易及难的顺序对问题进行讲解,章节的编排也参考了主题的难易程度及其相互的联系,内容较多的主题则按难易程度划分为多个子主题分别介绍。各个主题由算法介绍和例题讲解穿插而成。 只要是具有编程基础知识的读者,均适合阅读本书。书中的源代码均用C++实现,不过只用到了其基本功能,所以即便读者不熟悉C++也不影响阅读。 关于再版 令人惊喜的是,本书的第1版受到了广大读者的高度评价,在此表示感谢。特别是一些并不热衷于程序设计竞赛的读者也购买了本书。这是因为通过本书不仅可以学到算法,更能学到其设计和运用的思想。这正是本书划时代的亮点。 本书第2版追加了计算几何、搜索减枝、分治法和字符串相关算法4个主题。此外还追加了方便读者加深理解的练习题,并为学有余力的读者列出了书中未涉及的拓展主题,进一步丰富了本书内容。
❹ 《挑战程序设计竞赛2算法和数据结构》pdf下载在线阅读全文,求百度网盘云资源
《挑战程序设计竞赛2 算法和数据结构》([日]渡部有隆)电子书网盘下载免费在线阅读
链接: https://pan..com/s/1B5oEwukMNtPgrWcmM05upQ
书名:挑战程序设计竞赛2 算法和数据结构
作者:[日]渡部有隆
译者:支鹏浩
豆瓣评分:8.3
出版社:人民邮电出版社
出版年份:2016-9-1
页数:404
内容简介:
本书分为准备篇、基础篇和应用篇三大部分,借助在线评测系统Aizu Online Judge以及大量例题,详细讲解了算法与复杂度、初等和高等排序、搜索、递归和分治法、动态规划法、二叉搜索树、堆、图、计算几何学、数论等与程序设计竞赛相关的算法和数据结构,既可以作为挑战程序设计竞赛的参考书,也可以用来引导初学者系统学习算法和数据结构的基础知识。本书适合所有程序设计人员、程序设计竞赛爱好者以及高校计算机专业师生阅读。
作者简介:
渡部有隆(作者)
出生于1979年,计算机理工学博士。会津大学计算机理工学部信息系统学部门副教授。专业领域为可视化编程语言。AIZU ONLINE JUDGE开发者。
Ozy(审校)
本名冈田佑一,出生于日本大阪的短码高手。他花费相当长的时间提升短码编程技术,进而将其发展成一种技能,曾获得程序设计大赛的冠军。他开办过程序设计方面的培训班,目前致力于数学教育和程序设计师的培养工作。曾着有《短码之美:变成达人的心得技法》(人民邮电出版社)。
秋叶拓哉(审校)
2011年考入东京大学研究生院。以iwi的昵称活跃在程序设计竞赛中。TopCoder评级好成绩为世界第四(2013年)。《挑战程序设计竞赛(第2版)》(人民邮电出版社)作者之一。
❺ ACM国际大学生程序设计竞赛:知识与入门
ACM国际大学生程序设计竞赛:知识与入门.pdf
链接:
https://pan..com/s/19OY2FJUkk4RhW5WTsPkwfQ
《ACM国际大学生程序设计竞赛:知识与入门》适用于参加ACM国际大学生程序设计竞赛的本科生和研究生,对参加青少年信息学奥林匹克竞赛的中学生也很有指导价值。