高德纳,美国人,本名Donald Ervin Knuth,高德纳这个中文名字是他在1977年访问中国的时候,由姚储枫给起的,而我们中国人从此之后就一直这么叫他。
高德纳
1938年,在山清水秀,人才辈出的密尔沃基的土地上,高德纳诞生了。从小高德纳就展示出了非凡的天赋,他很小就跟随父亲学习了很多乐器。
在他中学时期,一次分糖果比赛的经历让他初露锋芒。那时候Ziegler糖果公司为了促销其称为Giant Bar的一种棒棒糖,在学校中办了一个比赛,看谁能用Ziegler's Giant Bar中的字母排列组合出最多的单词。高德纳回家之后就捧着一本大字典天天查看,终于,2周之后,他记住了4500个单词,而当时的裁判也仅仅知道2500个单词,小小年纪的高德纳就这样赢得了比赛。在高中的结业考试里,他更是创纪录地以97.5的平均分成绩考入了凯斯理工学院。进入大学之后的高德纳更让我们惊呼,他仅仅通过阅读计算机手册,就开始为IBM 650写编译程序。对文学感兴趣的他还写过一篇出色的科学幻想小说"普茨比度量衡体系" 在美国著名的《疯狂》(Mad)杂志上发表,克努特获得了他的第一笔稿费25美元,并因而获得西屋科学天才的提名奖。
高德纳
高纳德被人熟知的就是他写的TAOCP(The Art of Computer Programming)这系列书籍,这本豆瓣9.5评分的书籍,被很多人奉为经典。李开复曾经说过,如果你能解决这本书的提出的大部分问题内容,那么你的算法功力可以说是相当不错。
高纳德对我们的影响不仅仅是编写了TAOCP,他还改进了文字排版系统,Tex排版系统直到今天仍然是学术排版的首选,他的这一发明可以说是出版界的一次里程碑式的革命。而他自己也对这个tex非常的满意,他还声称,如果谁找到关于tex的一个错误,就付他2.56 美元,第二个错误5.12美元,第三个10.24美元……以此类推。因此网友们说,在他的书中找到错误人都是聪明的人。
现在的我们都知道学习编程首先要学好的就是算法和数据结构,而高纳德早在几十年前就提出了程序=算法+数据结构的概念。正是在他的指导下,我们才对学习编程有了正确的方向。
高德纳
高德纳一生在计算机领域贡献无数。R解析理论(LR parsing theory)、克努斯-莫里斯-普拉特模式,克努斯-莫里斯-普拉特算法等等仅仅是他出色一生的冰山一角。
如果你想更深入了解计算机,如果你想学习编程,那么TAOCP这本书你一定不能错过。因为这是无神论IT界的神的作品。
领取专属 10元无门槛券
私享最新 技术干货