网站颜色:

现货正版包邮!算法竞赛入门经典(算法艺术与信息学竞赛)+训练指南 刘汝佳 全2册 清华大学出版.

  • 产品名称:算法竞赛入门经典(算法艺...
  • 是否是套装:否
  • 书名:算法竞赛入门经典(算法艺术与信息学竞赛)
  • 定价:24.00元
  • 出版社名称:清华大学出版社
  • 出版时间:2009年11月
  • 作者:刘汝佳
  • 作者地区:意大利
  • 开本:16
  • 书名:算法竞赛入门经典(算法艺术与信息学竞赛)

 

 

算法竞赛入门经典——训练指南

作者:刘汝佳、陈锋

 

 

 


 

 

图书详细信息:
ISBN(咨询特价)
定价:52.(咨询特价)
印次:1-1
装帧:平装
印刷日期:2012-(咨询特价)
 

 

 

 


 

 

图书简介:
    本书是《算法竞赛入门经典》的重要补充,旨在补充原书中没有涉及或者讲解得不够详细的内容,从而构建一个较完整的知识体系,并且用大量有针对性的题目,让抽象复杂的算法和数学具体化、实用化。
    本书共6章,分别为算法设计基础、数学基础、实用数据结构、几何问题、图论算法与模型和更多算法专题,全书通过近200道例题深入浅出地介绍了上述领域的各个知识点、经典思维方式以及程序实现的常见方法和技巧,并在章末和附录中给出了丰富的分类习题,供读者查漏补缺和强化学习效果。


    本书题目多选自近年来ACM/ICPC区域赛和总决赛真题,内容全面,信息量大,覆盖了常见算法竞赛中的大多数细分知识点。书中还给出了所有重要的经典算法的完整程序,以及重要例题的核心代码,既适合选手自学,也方便教练组织学习和训练。


前言:(咨询特价).txt
前 言 “请问新书《算法实践手册》什么时候出版?望眼欲穿啊……” 自《算法竞赛入门经典》(以下简称《入门经典》)出版以来,我收到的这样的来信已经不计其数。 不过,我心里有着自己的打算。《入门经典》的出版固然为广大算法爱好者提供了一些帮助,但其中的缺憾也是很明显的,如例题太少,习题没有中文翻译,而且限于篇幅,基础知识还没讲完……这样看来,《算法实践手册》的出版时机尚未成熟,还需要一本书来铺垫,弥补上述缺憾。可惜的是,由于创业的繁忙,这个想法一直未能实现。 2010年8月底,我收到了一封读者的E-mail,和我探讨《入门经典》中的一些问题,从此和本书的第二位作者陈锋相识。我万万没有想惮这位来自银行业的软件工程师、产品架构师学习编程的时间只有两三年,他对算法的热爱、严谨求实的态度和认真刻苦的专业精神绝不亚于有着多年算法和软件工程经验的行家。在与陈锋的交流过程中,我重新开始了对这本新书的构思。 事实上,在《入门经典》的写作过程中,完成的书稿远远不止印刷出来的220多页,只是因为篇幅和内容限制没有用到该书中。如果好好地把这些书稿加以整理,再算上笔者多年来外出讲课时制作的课件、题目翻译,那么本书的轮廓已经呼之欲出。这些东西对我来说已经是老生常谈,但接触算法不久的陈锋却觉得很新鲜。这样,我萌生出了一个有趣的念头:和陈锋一起合著一本书,我提供资料和总揽全局,而陈锋一边学习以前没有接触过的新知识,一边把这些东西按照适合初学者的方式重新进行组织和细化,并以“没参加过算法竞赛的软件工程师”这样一个独特的视角提出各种意见和建议。 细水长流了一年多之后,这个构想终于成为了现实。虽然大量的业余时间都奉献给了这本书,但我相信这是值得的。 参与本书编写和校对工作的还有中国人民大学的陈卓华和陈怡、北京大学的鲍由之(绘制了书中的几乎全部插图)等;一位不愿透露姓名的台湾朋友阅读了几乎全部书稿并给出了非常详细的修改意见。为了更好地配合本书,我在UVa上举办了3场专题比赛(数据结构、几何、实用程序),并将其中的典型题目收录在了正文例题或者习题当中。由于题目难度颇大,如果没有李益明、梁盾、沈业基、李耀、周而进、陈卓华、陈怡、唐迪、李晔晨、肖刘明镜、鲍由之等朋友的鼎力相助,这些比赛几乎不可能取得圆满成功。 另外,我还要感谢CCF(中国计算机学会)的杜子德秘书长、吴文虎教授、王宏教授等,还有NOI科学委员会及竞赛委员会的专家们,以及ACM/ICPC亚洲区主席黄金雄教授和中国指导委员会秘书长周维民教授。他们都是我的良师益友,在我接触NOI和ACM/ICPC以来的十多年里让我学到了很多东西。 感谢清华大学出版社辛勤劳动的编辑们,尤其是与我合作多年的朱英彪老师,在本丛书的编写、出版和推广方面都做了大量的工作,是一位真心实意为读者着想的好编辑。 最后,感谢我的爸爸妈妈。不管我做什么,不管别人怎么说怎么看,你们总是那样的支持我,让我可以全身心的投入自己喜爱的事业,没有半点后顾之忧。你们教给我的善良、感恩和奉献,正是我多年来坚持写书的源动力。 刘汝佳 许多计算机相关专业的人在毕业之后除了为应付面试外基本都很少再去碰算法,而在实际的产品或者项目开发过程中,大多数人也没有必要亲自去实现复杂的算法。因此,算法渐渐淡出程序员的日常生活。同时,在现实生活中有另外一种声音:程序员的生活太纠结,coding的速度永远跟不上需求变化的速度,提需求的客户似乎成了程序员的“天敌”,成了他们“苦逼”生活的罪魁祸首。 那么,一本讲算法比赛的书跟这又有多少关系?就从我自身的经历说起吧。我不是计算机科班出身,但因种种原因进入了这个行业,而且是从一个很低的起点进入。于是我像所有人一样,平时很难静下心来学习算法,有的面试就去临时抱本书突击一下。终于有一天我受不了这种循环,问自己难道一定是为了一个急功近利的目的才去付出自己的时间吗?佛家有句话叫“凡夫求果,菩萨求因”,我就想,既然成不了圣人,就学一回圣人吧。 因缘际会,我接触到了《入门经典》及其作者刘汝佳,于是一发不可收拾,写这本书的过程也变成了修行与学习的过程。慢慢地,我发现算法对于实际工作的人而言,有着比应付面试更大的价值。所谓的算法、组件、模尸就像是一些基础的原材料,对于优秀的建筑师来说,需要透彻的理解(不一定写得很熟练)它们的关键性。因为一个错误的设计,对于系统来说,所要付出的代价远比一般的程序bug要高得多。更进一步说,现在做软件的为啥苦,为啥抱怨需求变化快?因为解决问题的思维有偏差。需求分析绝对不是简单地拿着需求,直接翻译成代码——这是最低层次的。算法分析的意义,更多地不在于性能,不在于那些脑筋急转弯,而在于发现纷繁复杂的问题背后的不变尸而这正是本书要着力与大家分享的。 没有大家的支持和帮助,这本书几乎是不可能写好的。尤其要感谢我的家人和朋友,为了这本书的写作,他们投入了大量的时间和精力。这里尤其是在我工作非常繁忙的情况下,写作占用了大量跟家人在一起的时间,没有妻子梁明珠和女儿婉之的支持,我几乎不可能集中精力参与本书的写作过程。 另外,也感谢我的同事徐海波、张大用、周洲、王洪桥、朱宗耀、朱洁晨等,他们不仅在工作上给了我非常大的支持和帮助,也对我参与写作的章节提出了很多非常好的建议。 陈锋 声明:书中用到了大量的例题和习题,感谢这些命题者和竞赛组织方的辛勤劳动。笔者已经尽可能地找到他们并征求了题目的使用权,但如果你认为本书侵犯了你的权益,请与出版社和作者取得。在UVa网站上可以找到本书大多数例题/习题的作者。 算法竞赛入门经典——训练指南 前言 ·IV· ·V· 
目录:(咨询特价).txt
目 录 第1章 算法设计基础 1 1.1 思维的体操 1 1.2 问题求解常见策略 15 1.3 高效算法设计举例 39 1.4 动态规划专题 60 1.5 小结与习题 77 第2章 数学基础 103 2.1 基本计数方法 103 2.2 递推关系 109 2.3 数论 119 2.3.1 基本概念 119 2.3.2 模方程 126 2.4 组合游戏 132 2.5 概率与数学期望 139 2.6 置换及其应用 144 2.7 矩阵和线性方程组 151 2.8 数值方法简介 163 2.9 小结与习题 170 第3章 实用数据结构 186 3.1 基础数据结构回顾 186 3.1.1 抽象数据类型(ADT) 186 3.1.2 优先队列 188 3.1.3 并查集 191 3.2 区间信息的维护与查询 194 3.2.1 二叉索引树(树状数组) 194 3.2.2 RMQ问题 197 3.2.3 线段树(1):点修改 199 3.2.4 线段树(2):区间修改 202 3.3 字符串(1) 208 3.3.1 Trie 208 3.3.2 KMP算法 211 3.3.3 Aho-Corasick自动机 214 3.4 字符串(2) 219 3.4.1 后缀数组 219 3.4.2 最长公共前缀(LCP) 222 3.4.3 基于哈希值的LCP算法 224 3.5 排序二叉树 227 3.5.1 基本概念 227 3.5.2 用Treap实现名次树 230 3.5.3 用伸展树实现可分裂与合并的序列 239 3.6 小结与习题 244 第4章 几何问题 254 4.1 二维几何基础 254 4.1.1 基本运算 255 4.1.2 点和直线 256 4.1.3 多边形 258 4.1.4 例题选讲 259 4.1.5 二维几何小结 263 4.2 与圆和球有关的计算问题 264 4.2.1 圆的相关计算 264 4.2.2 球面相关问题 269 4.3 二维几何常用算法 270 4.3.1 点在多边形内判定 270 4.3.2 凸包 271 4.3.3 半平面交 276 4.3.4 平面区域 282 4.4 三维几何基础 286 4.4.1 三维点积 287 4.4.2 三维叉积 288 4.4.3 三维凸包 290 4.4.4 例题选讲 292 4.4.5 三维几何小结 295 4.5 小结与习题 296 第5章 图论算法与模型 307 5.1 基础题目选讲 307 5.2 深度优先遍历 310 5.2.1 无向图的割顶和桥 312 5.2.2 无向图的双连通分量 314 5.2.3 有向图的强连通分量 319 5.2.4 2-SAT问题 323 5.3 最短路问题 327 5.3.1 再谈Dijkstra算法 327 5.3.2 再谈Bellman-Ford算法 332 5.3.3 例题选讲 335 5.4 生成树相关问题 343 5.5 二分图匹配 347 5.5.1 二分图最大匹配 347 5.5.2 二分图最佳完美匹配 348 5.5.3 稳定婚姻问题 352 5.5.4 常见模型 355 5.6 网络流问题 357 5.6.1 最短增广路算法 358 5.6.2 最小费用最大流算法 363 5.6.3 建模与模型变换 365 5.6.4 例题选讲 368 5.7 小结与习题 372 第6章 更多算法专题 383 6.1 轮廓线动态规划 383 6.2 嵌套和分块数据结构 389 6.3 暴力法专题 395 6.3.1 路径寻找问题 395 6.3.2 对抗搜索 400 6.3.3 精确覆盖问题和DLX算法 406 6.4 几何专题 412 6.4.1 仿射变换与矩阵 412 6.4.2 离散化和扫描法 414 6.4.3 运动规划 423 6.5 数学专题 425 6.5.1 小专题集锦 425 6.5.2 快速傅里叶变换(FFT) 428 6.5.3 线性规划 430 6.6 浅谈代码设计与静态查错 431 6.6.1 简单的Bash 431 6.6.2 《仙奇侠传四》之最后的战役 440 6.7 小结与习题 447 附录A 训练指南:使用UVa/LA题库 481 A.1 UVa在线比赛推荐 481 A.2 LA套题(ACM/ICPC真题)推荐 482 A.3 UVa在线比赛单题推荐 483 附录B Java、C#和Python语言简介 505 B.1 Java 505 B.2 C# 507 B.3 Python 509 算法竞赛入门经典——训练指南 目录 ·XIV· ·XIII·

基本信息

书名:算法竞赛入门经典

原价:(咨询特价)

作者:刘汝佳

出版社:清华大学出版社

出版日期:2009-11-1

ISBN(咨询特价)

字数:(咨询特价)

页码:289

版次:1

装帧:平装

开本:16开

商品标识:Y-1

编辑推荐

 

 

 

 

 


 

 

 

 

"

内容提要

 

 

 

 

 


 

 

 

 

本书是一本算法竞赛的入门教材,把C/C++语言、算法和解题有机地结合在了一起,淡化理论,注重学习方法和实践技巧。全书内容分为11章,包括程序设计入门、循环结构程序设计、数组和字符串、函数和递归、基础题目选解、数据结构基础、暴力求解法、高效算法设计、动态规划初步、数学概念与方法、图论模型与算法,覆盖了算法竞赛入门所需的主要知识点,并附有大量习题。书中的代码规范、简洁、易懂,不仅能帮助读者理解算法原理,还能教会读者很多实用的编程技巧。另外,书中包含的各种开发、测试和调试技巧也是在传统的语言、算法类书籍中难以见到的。 
本书可作为全国青少年信息学奥林匹克联赛(NOIP)的复赛教材及ACM国际大学生程序设计竞赛(ACM/ICPC)的入门参考,还可作为IT工程师与科研人员的参考用书。
"

目录

 

 

 

 

 


 

 

 

 

第1部分 语言篇
第1章 程序设计入门
1.1 算术表达式
1.2 变量及其输入
1.3 顺序结构程序设计
1.4 分支结构程序设计
1.5 小结与习题
1.5.1 数据类型实验
1.5.2 scanf输入格式实验
1.5.3 printf语句输出实验
1.5.4 测测你的实践能力
1.5.5 小结
1.5.6 上机练习
第2章 循环结构程序设计
2.1 for循环
2.2 循环结构程序设计
2.3 文件操作
2.4 小结与习题
2.4.1 输出技巧
2.4.2 浮点数陷阱
2.4.3 64位整数
2.4.4 C++中的输入输出
2.4.5 小结
2.4.6 上机练习
第3章 数组和字符串
3.1 数组
3.2 字符数组
3.3 最长回文子串
3.4 小结与习题
3.4.1 必要的存储量
3.4.2 用ASCIl编码表示字符
3.4.3 补码表示法
3.4.4 重新实现库函数
3.4.5 字符串处理的常见问题
3.4.6 关于输入输出
3.4.7 I/O的效率
3.4.8 小结
3.4.9上 机练习
第4章 函数和递归
4.1 数学函数
4.1.1 简单函数的编写
4.1.2 使用结构体的函数
4.1.3 应用举例
4.2 地址和指针
4.2.1 变量交换
4.2.2 调用栈
4.2.3 用指针实现变量交换
4.2.4 初学者易犯的错误
4.3 递归
4.3.1 递归定义
4.3.2 递归函数
4.3.3 C语言对递归的支持
4.3.4 段错误与栈溢出
4.4 本章小结
4.4.1 小问题集锦
4.4.2 小结
第2部分 算法篇
第5章 基础题目选解
5.1 字符串
5.1.1 WERTYU
5.1.2 TeX括号
5.1.3 周期串
5.2 高精度运算
5.2.1 小学生算术
5.2.2 阶乘的精确值
5.2.3 高精度运算类bign
5.2.4 重载bign的常用运算符
……
第3部分 竞赛篇"

 

热门设计服务