您现在的位置:书新闻
时间:2021年04月17日来源:百道网
【百道编按】人民邮电出版社出版《算法设计》一书。这是一本关于算法设计和分析的经典教材,围绕算法设计进行组织,对每种算法技术选择了多个典型范例进行分析,把算法的理论跟实际存在的问题结合起来,具有很大的启发性。

算法是计算机程序的灵魂。从网络聊天中数据包的传输,到抖音、快手等APP千人千面的推荐,算法都在发挥着巨大作用。可以说,在互联网时代,算法正在统治信息世界。
然而市面上的算法书数量繁多,应该如何挑选呢?
有这样一本算法书,美亚4.5分,豆瓣原版9.0分,畅销15年,口碑与质量绝佳。更值得一提的是,这本书还是哈佛、斯坦福、普林斯顿、多伦多等多所知名高校选用的算法教材。
这本书就是康奈尔大神Kleinberg的经典教材《算法设计》(Algorithm Design),一本最适合入门的经典算法书!
不能说所有程序员都看过这本书,但它作为大学里的算法教材,绝对是新手入门的经典好书。
从书名来看,似乎是「算法」和「设计」结合在一起,于是,很多人认为这可能并不是一本入门级的算法书。但其实这本书涉及的知识非常丰富,既可以作为初学者的第一本算法书,也可以作为高手程序员巩固的基础教材。
为什么会和「设计」相结合呢?还要从这本书的两位作者对算法的理念说起。
《算法设计》的作者是来自康奈尔大学的乔恩•克莱因伯格(以下简称乔恩)伊娃•塔多斯(以下简称伊娃)。关于算法问题,他们提出了这样的观点:
“算法问题构成了计算机科学的核心,但它们很少以整洁、精确的数学问题的形式出现。与之相反的是,它们往往有许多杂乱的、应用程序特定的细节,这些细节由一些至关重要和一些无关紧要的东西纠缠在一起。”
因此他们认为,算法问题由两个基本部分组成:一是得到数学上整洁的问题核心,二是根据问题结构确定适当的算法设计技术。
这两个部分相互影响:越能自如地运用各种可能的设计技术,也就越能认识到世上混乱问题中的整洁形式描述。在最有效的情况下,算法思想不但能提供适当问题的解决方案,而且它们构成了一种语言,可以让学习算法的程序员们清晰地表达基本问题。
于是,乔恩和伊娃决定将设计技术带入到算法研究。设计过程一般始于各种计算应用程序中出现的问题,构建在对算法设计技术理解的基础之上,最终得到这些问题的有效解决方案。
他们试图探讨算法思想在计算机科学中的作用,并将这些思想与一些精确制定的问题联系起来。他们为这些“问题”设计算法并进行分析。
基于这样的研究,《算法设计》一书应运而生。乔恩和伊娃将这本书的目标定为:如何在不同计算领域的复杂问题中识别算法问题的清晰描述形式,并针对由此产生的问题,给出如何设计有效算法的建议。
为此,他们将研究成果重新梳理,从最简单的初始方法甚至于最终的解决方案,以帮助大家更好地理解复杂的算法。读过这本书的读者都会感觉:这本书不是描述从问题陈述到算法的最直接路径,但是可以直接反映出程序员们真正思考这些问题的方式。
一本能畅销十余年,口碑绝佳的图书,绝对离不开优秀的作者。那《算法设计》的两位作者到底是什么来头呢?
第一位作者乔恩是计算机科学家,在1996年获得了麻省理工学院的博士学位,目前是康奈尔大学计算机科学教授。

乔恩•克莱因伯格(Jon Kleinberg)
醉心于学术研究的他,并没有因为优秀的履历就停滞不前。从1995年开始,乔恩在IBM研究院做起了研究,主攻网络与信息组合结构的数学分析与建模。
乔恩曾获得帕卡德基金会和斯隆基金会的研究基金,他的研究集中在算法上,特别是与网络结构和信息相关的算法,以及这些算法在信息科学、优化、数据挖掘及计算生物学等方面的应用。他利用信息中心和权威信息进行网络分析的工作,对形成最新一代因特网搜索引擎的基础起了很大的作用。
在计算机领域,乔恩获奖无数。美国国家科学基金会事业奖、海军研究局青年研究员奖、IBM杰出创新奖、奈望林纳奖等知名奖项都被他收入囊中。
另一位作者伊娃也是康奈尔大学的计算机科学教授,同时还是一名数学家。

伊娃•塔多斯(Éva Tardos)
1981年,伊娃在导师András Frank的指导下,于罗兰大学攻读博士学位。在2006年,伊娃开始担任康奈尔大学计算机科学系的院长。
2007年,伊娃当选为美国国家工程院、文理科学院和美国哲学学会的院士。同时她也是ACM院士。
伊娃是富尔克森奖、乔治·B·丹齐格奖、哥德尔奖和EATCS奖的获得者。在2019年,伊娃还被授予了IEEE约翰·冯·诺依曼奖章。
伊娃的研究兴趣主要集中在图和网络问题的算法设计和分析上。她因在网络流算法和网络问题的近似算法方面的工作而闻名。其中包含算法博弈论,这是一个新兴领域,关注为自私用户设计系统和算法。
乔恩和伊娃都是拥有丰富算法经验的科学家,在计算机领域颇有建树。而他们二人合著的《算法设计》也成为了华盛顿大学等众多高校的课程教材。
《算法设计》和其他算法书最大的区别在于注重算法设计思维的培养,每一章都从实际问题出发,通过分析真实世界的问题来激发算法思想,将算法设计思维带入算法研究中。
两位老师采用新颖的“结构化教学法”,以一种清晰、直接的方式,指导学生自己分析和定义问题,并从中找出适用于给定场景的算法设计原则,引导学生掌握问题形式化、算法设计和算法分析的全过程,鼓励学生更深入地理解算法设计过程,探索算法在计算机科学的更广阔领域中的应用。
除了内容覆盖面广以外,这本书还有一个特色就是有200多道精彩的习题,以及PSPACE问题、参数复杂性等内容。
这是乔恩和伊娃在康奈尔大学教学课程的一部分,几乎都是在康奈尔大学算法课程的课外作业中被开发,或者课堂测验的考试题目,其中部分题目出自Yahoo!和Oracle等公司。他们将问题视为本书的一个重要组成部分,并且让问题集的结构与他们对内容的整体方法保持一致:建立必要的符号和形式化,设计算法,然后分析这个算法并证明它是正确的。
为了帮助解决这些问题,他们在每章中都加入了一节,名为“带解答的练习”,讨论一个或多个问题,并描述了如何形式化一个解。
除此之外,每章还有“注释和进一步阅读”作为补充阅读,以帮助大家理解。
实际上,与本书的其余部分一样,这些节中的讨论应该看成是试图让人们了解一个更大的过程,通过这个过程可以考虑这种类型的问题,并最终形成精确解的详细说明。
由于这本书被哈佛、斯坦福等高校广泛采用,因此乔恩和伊娃对学习方面的建议更偏向于大学生。
他们建议初学者阅读本书之前应该先学习基于编程的计算机科学基础课程,并且已编写过实现基本算法的程序,操作过离散结构(树和图),并应用过基本的数据结构(如数组、列表、队列和堆栈)。
按照上述思路,他们利用了许多计算机科学和相关领域的问题来开发基本的算法设计技术,包括系统和网络的应用程序(缓存、交换、互联网上的域间路由),人工智能(规划、博弈、霍普菲尔德网络),计算机视觉(图像分割),数据挖掘(变更点检测、聚类),运筹学(航线调度),以及计算生物学(序列比对、RNA 二级结构)。
乔恩和伊娃合著的《算法设计》,围绕算法设计进行组织,对多个算法技术的典型范例解构剖析,侧重对算法设计思路的讲解,并让算法与实际问题相结合。可以说,这确实是一本不可多得的经典算法书!
《算法设计》
点击图书封面可直接购买
出版社:人民邮电出版社
作者:[美],乔恩·克莱因伯格(Jon,Kleinberg)
译者:王海鹏
出版时间:2021年03月
(本文编辑:佑生)
北京百道世纪网络信息技术有限公司及其平行公司北京百道世纪教育科技有限公司下属的网络媒体平台百道网、百道网微信、帮书店微信,以及百道学习APP和小程序等平台上发布的文章,版权属于北京百道世纪网络信息技术有限公司所有,或北京百道世纪网络信息技术有限公司与著作权人共同拥有,严禁转载。任何纸媒、网媒或社交媒体需要发布或转载,请与版权专员联系(service@bookdao.biz),获得授权后,方可转载。对于任何未经授权的转载,我们将依法追究其侵权责任。
扫描二维码 分享文章
主业不折腾 创新不止步——内蒙新华跑出转型发展“加速度”
谁能想到,这里除了北极熊和冰川,还充满灵性、巫术与万物有灵
蝉鸣不已,一鸣惊人,是什么让这个出版品牌五年间声名鹊起?
2024“上海好书”半年榜发布,30种图书入选(附书单)
“彩乌鸦”飞来二十年——在碎片化的时代,如何完整读完一本书?
李政道:科学精神永远是人类精神文明中最可宝贵的一部分
李文波:阅读服务是抓手、是新的业务单元、是新的增长点
加强区域交流合作 助力教育出版高质量发展——第五届西部地区教育出版社年会在银川开幕
打造传世精品 攀登出版高峰——上海世纪出版集团亮相上海书展
全新设定,深度融合,2024南国书香节带来而立新气象
今天,2024河北惠民书市开始了!
总有一种力量无可阻挡——共和国农机长子成长纪实
“新华·青年夜校”打造新华书店新业态
第六届“全民阅读·书店之选”十佳作品发布
上海书展首次公布整体零售数据,线下总码洋4814万元
AI像极了时装模特身上的花枝招展,入眼的是趋势,落地才是衣服
“北幻城”开工 安徽新华打开融合发展“IP书”首页
阅读让这片热土更加生机勃勃——2024南国书香节侧记
汪耀华:上海书展与百道网的数据合作范本
探索“爱”的教育,开启“心”的成长——中国妇女出版社《在爱中成长》新书发布会在京举办