程序员应该知道的TAOCP二三事
《计算机程序设计艺术》系列从1963年开始写作,至今已经跨越半个世纪,这套书计划出版7卷......中文版由图灵教育再版,卷1于2015年12月上市,卷2即日起可在各大网店购买。...
《计算机程序设计艺术》系列由当代最伟大的程序员之一高德纳从1963年开始写作,至今已经跨越半个世纪。这套书原计划出版7卷,已经出版《计算机程序设计艺术 卷1:基本算法》《计算机程序设计艺术 卷2:半数值算法》《计算机程序设计艺术 卷3:排序与查找》《计算机程序设计艺术,卷4A:组合算法》《计算机程序设计艺术:MMIX的增补》。2016年,高德纳78岁,我们期待他的伟大计划早日实现。
TAOCP中文版由图灵再版,《 卷1:基本算法(第3版)》已经于2015年12月上市,再版后受到读者的一致欢迎和认可。值得兴奋的是,《卷2:半数值算法(第3版)》各大网店已经到货,即日起可在京东、亚马逊、当当等网店购买。
译者:李伯民 范明 蒋爱军(卷1)
巫斌 范明(卷2)
页数:524(卷1) 616(卷2)
定价:198
开本:大16开
- 计算机科学经典巨著,入选《美国科学家》20世纪最重要的12部学术专著
- 最年轻图灵奖得主、当代最伟大的程序员之一高德纳作品
《卷1:基本算法(第3版)》讲解基本算法,其中包含了其他各卷都需用到的基本内容。本卷从基本概念开始,然后讲述信息结构,并辅以大量的习题及答案。
《卷2:半数值算法(第3版)》全面讲解了半数值算法,分“随机数”和“算术”两章。书中总结了主要算法范例及这些算法的基本理论,广泛剖析了计算机程序设计与数值分析间的相互联系。
购买
京东:http://item.jd.com/11848569.html
http://item.jd.com/11999308.html
亚马逊:
https://www.amazon.cn/dp/B019ZQR9GW
https://www.amazon.cn/dp/B01J2XKPXM
当当:
http://product.dangdang.com/23839682.html
http://product.dangdang.com/24007299.html
长按二维码试读“
随机数
”高德纳其人
高德纳(Donald Ervin Knuth)
1938年1月10日出生于美国,当代著名的计算机科学家,现代计算机科学先驱人物。
高德纳的多卷本巨著《计算机程序设计艺术》,如今已成为基础算法与数据结构领域的传世经典。《美国科学家》杂志将其评为20世纪最重要的12部自然科学专著之一,与罗素和怀特海、爱因斯坦、狄拉克、费曼、冯·诺依曼等人的著作齐名。他推广了算法分析中的渐近符号(即大O 符号),发明了LR语法分析,还反驳了Dijkstra对goto语句的批判。
Knuth不只是理论家。1976年写完《计算机程序设计艺术》第3卷后,他本打算花一年时间写个排版系统,包括TeX和METAFONT,好让自己的著作看起来更加赏心悦目。结果十年时光过去,他才完成了这款软件。同时,他还发明了一种称为“文学编程”的编程风格,以及一种用于排版、至今仍很先进的文章段落断行算法。
他一生获奖无数,包括首届美国计算机协会Grace Murray Hopper奖(1971年)、图灵奖(1974年)和美国国家科学奖(1979年)。自1990年起,他不再使用电子邮件。据他自己解释,这样做是因为他追求的不是“高屋建瓴”而是“寻根究底”,他必须深刻理解与领悟计算机科学的广袤领域,从而在书中加以解释。
高德纳(Donald Ervin Knuth)
1938年1月10日出生于美国,当代著名的计算机科学家,现代计算机科学先驱人物。
高德纳的多卷本巨著《计算机程序设计艺术》,如今已成为基础算法与数据结构领域的传世经典。《美国科学家》杂志将其评为20世纪最重要的12部自然科学专著之一,与罗素和怀特海、爱因斯坦、狄拉克、费曼、冯·诺依曼等人的著作齐名。他推广了算法分析中的渐近符号(即大O 符号),发明了LR语法分析,还反驳了Dijkstra对goto语句的批判。
Knuth不只是理论家。1976年写完《计算机程序设计艺术》第3卷后,他本打算花一年时间写个排版系统,包括TeX和METAFONT,好让自己的著作看起来更加赏心悦目。结果十年时光过去,他才完成了这款软件。同时,他还发明了一种称为“文学编程”的编程风格,以及一种用于排版、至今仍很先进的文章段落断行算法。
他一生获奖无数,包括首届美国计算机协会Grace Murray Hopper奖(1971年)、图灵奖(1974年)和美国国家科学奖(1979年)。自1990年起,他不再使用电子邮件。据他自己解释,这样做是因为他追求的不是“高屋建瓴”而是“寻根究底”,他必须深刻理解与领悟计算机科学的广袤领域,从而在书中加以解释。
关于TAOCP,高德纳说
对我的书,人们时常持有两种不同评价,这让我感到左右为难。一种评价是:“哎,这部分内容太复杂了,你还是别提它比较好。”另一种评价是:“你这书上的知识都太微不足道了,没什么意思。”对前一种评价我愿意回答:“我干脆什么都别提算了。”对后一种评价我想说:“鄙人实在是太才疏学浅了。”说到底,对我来说至关重要的是,所有能在半页纸篇幅之内解释清楚的精妙知识,我这书里必须得有,所有精彩得让我过目难忘的材料,我也决不会错过。于是我发现,在我写的二叉决策树一章中,居然塞进了260多道习题。因为层出不穷的素材似乎在提醒着我,关注这章的读者绝非等闲之辈。不过,我的意思可不是所有读者都会对这260多道习题感兴趣。我只是相信,很多读者会因为这里的每一道习题,而对我的书赞不绝口。
居然真有人从头到尾读过我的书,这事儿太让我惊讶了。多数情况下,人们只挑选自己喜欢的章节看看。可他们如果继续读下去,会发现书中的内容其实只用到了一小部分术语,而并非充斥着各种各样的符号和术语。如果我不写这些书的话,别人查找类似资料的过程可能会困难得多。这正是我不断写作的动力。
根据著名Common Lisp专家、Jolt生产效率大奖图书《实用Common Lisp编程》作者Peter Seibel的访谈笔录成书的《编程人生》,记录了15 位软件先驱的编程生涯。
Seibel特别有意思,在访谈每个大牛的时候基本都会问到一个问题:
你觉得《计算机程序设计艺术》这套书怎么样?我在访谈中问过一些人,他们中有些真的从头读到了尾,有些把它放在书架上,在需要时作为参考书查阅,还有些就只是摆在书架上,连碰都不去碰它。
以下大牛都认真研读过高德纳的《计算机程序设计艺术》:
参与创建Common Lisp和Scheme的Guy Steele
Smalltalk之母Dan Ingalls
调试大师Bernie Cosell
JavaScript宗师Douglas Crockford
JavaScript之父Brendan Eich
Java大神Joshua Bloch
Haskell先驱Simon Peyton Jones
人工智能专家、谷歌研发总监Peter Norvig
关于TAOCP,他们说
➤ Brendan EichKnuth 写的《计算机程序设计艺术》,卷1到卷3,我很喜欢,特别是半数值算法那部分,还有双重散列之类的,关于黄金比例的证明则被留做练习题,很有意思。
➤Joshua Bloch
Knuth的《计算机程序设计艺术》,事实上,我从来没有读完这一套书,
没有从头到尾看过。但当我研究某个具体算法的时候,我就去看他会怎么说。往往可以得到我想要的东西,这套书太全面了。
➤Douglas Crockford
在上大学时,有那么几个月我连房租都没交,就是为了买他的书。我读过这些书,从中得到了不少乐趣,比如在第一卷的索引有个关于拖车的笑话就很好玩。我到现在为止还没能把书上的内容全部搞懂。Knuth对某些地方的研究要比我深入得多,但我还是喜欢这些书并把它们当做参考资料。
➤Simon Peyton Jones
Don Knuth的《计算机程序设计艺术》系列不是能够一口气读下去的,不是那种书。在某个阶段我多次推荐过这套书。
➤Peter Norvig
有段时间我拿它当我的显示器底座,因为它是我最大部头的成套书之一,而且高度恰好合适。我感觉这样很舒服,因为它总在那儿陪着我,而且因为它就在我面前,所以我找参考书的时候就更容易去顺手翻翻它。
Seibel:但你每次想查阅它,还得先把显示器抬起来吗?
Norvig:不用,我那套书是盒装的,你只要使劲抽书就行,也可以只抽其中一本。
关于TAOCP的赠书,我在憋大招
你们有啥好建议?
☟
关注 图灵教育
微信扫一扫关注公众号