- ISBN:9787115431615
- 装帧:暂无
- 册数:暂无
- 重量:暂无
- 开本:32开
- 页数:404
- 出版时间:2016-09-01
- 条形码:9787115431615 ; 978-7-115-43161-5
本书特色
本书分为准备篇、基础篇和应用篇三大部分,借助在线评测系统Aizu Online Judge以及大量例题,详细讲解了算法与复杂度、初等和高等排序、搜索、递归和分治法、动态规划法、二叉搜索树、堆、图、计算几何学、数论等与程序设计竞赛相关的算法和数据结构,既可以作为挑战程序设计竞赛的参考书,也可以用来引导初学者系统学习算法和数据结构的基础知识。本书适合所有程序设计人员、程序设计竞赛爱好者以及高校计算机专业师生阅读。
内容简介
畅销书《挑战程序设计竞赛》第2弹!网罗算法和数据结构的关键知识点!系统学习基础知识——适合初学者的入门书有效运用在线评测——适合挑战者的参考书 全书练习均可借助在线评测系统(AIZU ONLINE JUDGE) 与竞赛相同的自动审查系统,有效检测Bug和算法效率 大量习题及往年真题,体验各类题型、总结答题技巧 与世界各地选手相互切磋、共同成长 入门、挑战、进阶,享受收集算法的乐趣!
目录
第1章 有效运用在线评测系统 3
1.1 攻克程序设计竞赛的学习方法 3
1.2 什么是在线评测 7
1.3 用户注册 9
1.4 浏览问题 10
1.5 解答问题 12
1.6 个人页面 18
1.7 如何运用本书 19
第2部分 [基础篇]为程序设计竞赛做准备的算法与数据结构 21
第2章 算法与复杂度 23
2.1 算法是什么 23
2.2 问题与算法示例 23
2.3 伪代码 25 第1部分 [准备篇]攻克程序设计竞赛的学习方法 1 第1章 有效运用在线评测系统 3 1.1 攻克程序设计竞赛的学习方法 3 1.2 什么是在线评测 7 1.3 用户注册 9 1.4 浏览问题 10 1.5 解答问题 12 1.6 个人页面 18 1.7 如何运用本书 19 第2部分 [基础篇]为程序设计竞赛做准备的算法与数据结构 21 第2章 算法与复杂度 23 2.1 算法是什么 23 2.2 问题与算法示例 23 2.3 伪代码 25 2.4 算法的效率 26 2.5 入门问题 28 第3章 初等排序 33 3.1 挑战问题之前——排序 33 3.2 插入排序法 35 3.3 冒泡排序法 40 3.4 选择排序法 44 3.5 稳定排序 48 3.6 希尔排序法 52 第4章 数据结构 57 4.1 挑战问题之前——什么是数据结构 57 4.2 栈 59 4.3 队列 64 4.4 链表 70 4.5 标准库的数据结构 77 4.6 数据结构的应用——计算面积 86 第5章 搜索 89 5.1 挑战问题之前——搜索 89 5.2 线性搜索 91 5.3 二分搜索 94 5.4 散列法 98 5.5 借助标准库搜索 102 5.6 搜索的应用——计算*优解 106 第6章 递归和分治法 109 6.1 挑战问题之前——递归与分治 109 6.2 穷举搜索 111 6.3 科赫曲线 114 第7章 高等排序 119 7.1 归并排序 120 7.2 分割 125 7.3 快速排序 129 7.4 计数排序 133 7.5 利用标准库排序 137 7.6 逆序数 139 7.7 *小成本排序 143 第8章 树 147 8.1 挑战问题之前——树结构 148 8.2 有根树的表达 150 8.3 二叉树的表达 154 8.4 树的遍历 159 8.5 树遍历的应用——树的重建 163 第9章 二叉搜索树 167 9.1 挑战问题之前——二叉搜索树 168 9.2 二叉搜索树——插入 169 9.3 二叉搜索树——搜索 174 9.4 二叉搜索树——删除 177 9.5 通过标准库管理集合 182 第10章 堆 189 10.1 挑战问题之前——堆 190 10.2 完全二叉树 191 10.3 *大/*小堆 193 10.4 优先级队列 197 10.5 通过标准库实现优先级队列 201 第11章 动态规划法 203 11.1 挑战问题之前——动态规划法的概念 203 11.2 斐波那契数列 204 11.3 *长公共子序列 208 11.4 矩阵链乘法 211 第12章 图 217 12.1 挑战问题之前——图 218 12.2 图的表示 221 12.3 深度优先搜索 224 12.4 广度优先搜索 232 12.5 连通分量 237 第13章 加权图 241 13.1 挑战问题之前——加权图 242 13.2 *小生成树 244 13.3 单源*短路径 249 第3部分 [应用篇]程序设计竞赛的**程序库 261 第14章 高等数据结构 263 14.1 互质的集合 264 14.2 范围搜索 269 14.3 其他问题 278 第15章 高等图算法 279 15.1 所有点对间*短路径 280 15.2 拓扑排序 284 15.3 关节点 290 15.4 树的直径 295 15.5 *小生成树 299 15.6 其他问题 303 第16章 计算几何学 305 16.1 几何对象的基本元素与表现 306 16.2 直线的正交/平行判定 312 16.3 投影 314 16.4 映象 316 16.5 距离 317 16.6 逆时针方向 321 16.7 判断线段相交 324 16.8 线段的交点 326 16.9 圆与直线的交点 328 16.10 圆与圆的交点 331 16.11 点的内包 333 16.12 凸包 335 16.13 线段相交问题 339 16.14 其他问题 343 第17章 动态规划法 345 17.1 硬币问题 346 17.2 背包问题 349 17.3 *长递增子序列 353 17.4 *大正方形 357 17.5 *大长方形 360 17.6 其他问题 364 第18章 数论 367 18.1 质数检验 368 18.2 *大公约数 372 18.3 幂乘 376 18.4 其他问题 378 第19章 启发式搜索 381 19.1 八皇后问题 382 19.2 九宫格拼图 386 19.3 十六格拼图 391 附录 399 通过本书可以获得的技能 400 挑战以往的程序设计竞赛真题! 402 参考文献 404 信息
作者简介
渡部有隆
出生于1979年,计算机理工学博士。会津大学计算机理工学部信息系统学部门副教授。专业领域为可视化编程语言。AIZU ONLINE JUDGE开发者。
http://web-ext.u-aizu.ac.jp/~yutaka/
审校:
Ozy
本名冈田佑一,是出生于日本大阪的一位短码高手。他花费相当长的时间提升短码编程技术,进而将其发展成一种技能,曾获得程序设计大赛的冠军。他开办过程序设计方面的培训班,目前致力于数学教育和程序设计师的培养工作。曾著有《短码之美:编程达人的心得技法》。
渡部有隆
出生于1979年,计算机理工学博士。会津大学计算机理工学部信息系统学部门副教授。专业领域为可视化编程语言。AIZU ONLINE JUDGE开发者。
http://web-ext.u-aizu.ac.jp/~yutaka/
审校:
Ozy
本名冈田佑一,是出生于日本大阪的一位短码高手。他花费相当长的时间提升短码编程技术,进而将其发展成一种技能,曾获得程序设计大赛的冠军。他开办过程序设计方面的培训班,目前致力于数学教育和程序设计师的培养工作。曾著有《短码之美:编程达人的心得技法》。
秋叶拓哉
Google Code Jam 2010 第9名
ACM-ICPC World Finals 2012 第11名
TopCoder Open 2013 Algorithm
第4名2011年考入东京大学研究生院。以iwi的身份活跃在程序设计竞赛中。《挑战程序设计竞赛(第2版)》作者之一。信息
-
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
全图解零基础word excel ppt 应用教程
¥12.0¥48.0 -
机器学习
¥59.4¥108.0 -
深度学习的数学
¥43.5¥69.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥31.9¥65.0 -
硅谷之火-人与计算机的未来
¥14.3¥39.8 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥76.3¥109.0 -
UG NX 12.0数控编程
¥22.1¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
UN NX 12.0多轴数控编程案例教程
¥25.8¥38.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥83.3¥119.0 -
Visual Basic 语言程序设计基础(第6版)
¥32.0¥45.0