全球当下最厉害的14位程序员(最伟大的程序员高德纳)

作者:Justin Richards , 译者:Elliot,何逸勤

转自图灵教育, 已获授权. [遇见数学] 特此感谢!

全球当下最厉害的14位程序员(最伟大的程序员高德纳)(1)

最伟大的计算机程序员之一

高德纳(又译唐纳德•克努斯)生于1938 年,是著名的计算机科学家,也是现代算法的先驱之一。在计算机科学及数学领域发表了多部具广泛影响的论文和著作。1974年图灵奖得主。他的系列巨著《计算机程序设计艺术》在计算机科学界享誉多年。多年前,高德纳对现有的数学文本处理工具感到不满,于是创建了自己的工具 TeX 和 Metafont。如今,这两个工具成为广泛应用的免费软件。

高德纳(D. E. Knuth)教授是备受尊崇的系列巨著《计算机程序设计艺术》(The Art of Computer Programming)和数十篇受到高度赞誉的计算机科学论文的作者。2011年6月,结束了在英国的书籍研讨和系列演讲的高德纳教授,跟BCS编辑Justin Richards畅谈了自己的人生和工作。

您最广为人知的成就应该是《计算机程序设计艺术》系列著作了。1999年,这个系列被美国科学家(American Scientist)期刊评选为20世纪最重要的12部理学专著之一。这个系列最初是如何创作出来的?您是如何看待美国科学家期刊的这一评价呢?

这系列书籍大约从1960年代开始创作。那时候,因为没有合适的资源,所以大家都在重新发明一些已有的东西。我一直都很喜欢写作,在学校参与报纸和杂志的工作,认为自己是一个作家。我意识到,需要有人记录下所有已经发表而我们正在遗忘的优秀思想。

这又要回溯到最初的年代,当时真正研究计算技术的人很可能还不到一千个。我没有把这看作将要影响世界的事情,但仍然觉得这些很酷的资料是值得认真整理的。

那时候,我就考虑还有什么人合适写作这样的书籍。我能想到的每个人,他们都很可能只会关注自己所研究的那个领域。在我所知道的人当中,只有我自己是没有发明创造过什么东西的,因此我设想自己能够以中立的立场来担任他们的代言人。坦白说,那就是初始动机,我认为存在那样的需求。

我写作这样的书,还有一个很自然的理由。那就是,我要尝试将很多人的不同想法结合起来。我会看到,A君以某种方式来分析他的方法A,而B君会以另一种方式来分析与之竞争的方法B。因此,我就要用B君的方式来分析方法A,用A君的方式来分析方法B。

因此,我最终就是以单纯分析以上内容的形式来创作书的雏形。很快,我认识到,有些被我捆绑使用的科学方法,在我所受的教育中其实是不允许同时出现的。然而,一次又一次地,我真的看到只有这样的思维方式才可以正确地阐述问题。

长话短说,很快我也有了自己的不同意见,并且开始发现新东西,这样就难以继续中立地写作了。不过,我仍然尝试在最大限度内以公允、合理的态度去总结每个人的有价值思想。

至于这本书入选世纪最佳书籍,我还觉得不太好意思。他们把我推到爱因斯坦和费曼的伟大队列中,而我实际上并不属于那样的级别。这可能仅仅是因为他们必须从计算机科学领域选出一个人,而我又没有太多的竞争者罢了。虽然我也觉得自己在研究领域的努力工作是值得提及的,但这样把我挑选出来代表计算机科学,总有点关公战秦琼的意味了。

是什么促使您投身计算机科学这个领域的呢?

我天生就是一个计算机科学家——我的头脑里有一种组织东西的思维方式,注定让我成为一个好的程序设计员。我觉得任何人都可以学习使用计算机,但是五十个人里面大概只有一个人会成为像我这样的极客。这意味着我们这些人将在这个领域中的不断创新,并与计算机产生共鸣。我们的思维方式会帮助我们更容易地学习如何制造机器。

您为什么会认为计算机科学是如此重要呢?

计算机科学之所以重要,是因为它改变了沟通的方式。它还影响了金融业,这是我不太情愿提及的。可惜的是,世人是以我和我的同行们对华尔街产生的影响来衡量我们的工作的。在这个意义上,我是很嫉妒天文学家的,因为世人认为天文学家由自己的兴趣去研究天文学是值得尊重的。其实,我研究计算机科学也是同样出于兴趣啊。

我对IT这个说法并没有太大的共鸣,真正打动我的是科学。对我而言,IT是不错的东西,但并非我所擅长的领域。我的太太就能比我更快地掌握某个图标的含义、找到要点击什么地方。但要让机器完成复杂、细致的工作,在科学上是有许多难题需要攻克的。我曾经觉得很多问题是无法找到答案的,但事实上我们已经一步步地知道要如何解决它们。对我来说,即便没有任何金钱上的回报,我也会做这些工作。

所以说您对此充满激情吗?

那是,就像每天早上醒来我都会想着今天要好好写个程序。

您是受到缪斯女神的眷顾了吧?

是啊,有些日子她给予我的灵感要比平常的多。甚至有某个阶段,我几乎认为有个缪斯女神一直在给我口授内容呢。

在您看来,您在计算机科学领域最大的成就是什么?

我想我的第一个成果是研究编译器的理论。我曾经研究过代数语言的理论,而在我写这本书(第10章)的时候,我正试图描述人们在这个领域的种种发现和成果,然后我突然意识到,可以有一种方法把这些发现和成果都关联起来。由于这个发现过于新奇,我不知道该怎样在书里面阐释它,于是就把它发表成一篇学术论文。后来,其他的人读懂了我的意思并开始应用,最终让这个发现成为了今天所有代数编译器的分析原理。

不过我觉得我最大的成就是发明了比较算法优劣的数学方法。为了了解一个程序到底好不好,我创造了一种量化的比较方法,例如你可以说一个程序优于另外一个程序2.3倍。这个数学方法叫做算法分析,是我最引以为豪的学术成就,也是成功应用计算机的关键。

当我发明这套数学方法的时候,我跟我的出版商说,不如把这本书改名作“算法分析”吧。但是他们说不行,这样的话这书就永远卖不出去了!但实际上那就是此书的核心内容,它除了综合总结计算机学者发明的算法,还帮助我们从量化的角度去评价每个算法的优劣。

在您的网站上有关于“你为何不用Email”的回覆。“对于那些生活在事务的顶端的人们而言,Email是个美妙的东西。但那不是给我用的,我的角色是在事件的底层。”您是否可以再解释一下自己对Email的立场,以及“在事件的底层”的含义?

某些人是不能整天聒噪不休的,他们要考虑的事情,需要长时间的专注、对材料进行组织并营造坚实的基础,而不是仅仅对前沿问题的惊鸿一瞥。将某些内容以精确的形式表达出来,是需要很长时间的。要正确地做好事情,我就必须专注地耗费大量的时间。当我被大家当作权威的时候,世上数不清的人们要来问这问那。因此,用了15年Email之后,我觉得真的足够了。

之前的一位图灵演讲者Grady Booch非常主张编程的简洁性,而您在赢取西班牙“知识边界奖”的导言中也有相同的论调。您可否解释一下您为何希望程序保持简单、紧凑、易懂?

我想我们要先温习爱因斯坦的名言“要让它尽可能的简洁,而又不至于过分简洁”。事实上并非样样事情都存在捷径,都是简单易懂的。然而我发现,如果我们有再三思考的机会,几乎没有一件事情是不能被简化的。正因为如此,人们时不时会说:“好吧,基于我们现有的知识,让我们把旧的东西推到重来吧!”

几年前在斯坦福有一个名为“清白历史”的项目,口号是“让我们找个更好的方法来实现因特网”。当东西被不断添加进来并且累积一段时间后,你就会发现已经存在太多的垃圾,而这些垃圾现在看来没有任何理由存在了。

那就像人的阑尾,也许曾经某个时候它是有存在的意义的,但是现在已经不再需要了。我觉得这个项目有潜力,尽管实现的可能性微乎其微,因为整个世界已经离不开现存的因特网了。要一个人跳出来说“让我们重新设计整个因特网,从把程序导入计算机开始”,那是非常困难的。这有点像当时Linux的出现,其目的就是尝试去简化操作系统。

您跟Grady Booch还拥有另外一个共同点,就是你们都讲过你们可以欣赏到代码和编程中所体现的美,您这样讲的真正含义什么呢?

我是从几层不同的含义来看待“艺术”这个词的。通常,艺术意味着人类创造的某种东西,并非自然的。还有一层含义,那就是赋予美学价值的精致艺术品。

很多情况下,所谓美感不过是“情人眼里出西施”。但是,人们会因某个事物本身的优雅和谐调而去创造它,那与评论和欣赏其他人的作品是类似的,我们会觉得自己感受到美。当这个作品达到某种标准的时候,我们会因之而满足。

对于所谓的“某种标准”,可能Grady跟我的意见是不一样的,那就如没有任何两个人能对哪种音乐是最好的问题达成完全一致的意见。但是,音乐家无疑是清楚自己喜欢和不喜欢什么音乐的,也很清楚自己什么时候创造出好音乐。这就很类似我看待程序的方式了。

我想最终都是个人喜好的问题?

的确如此。没有一个算法你会在输入以后问自己:这到底够不够漂亮呢?尽管的确有人尝试去这样做——美国最伟大的数学家之一George [David] Birkhoff曾经在三十年代写过一本书,名为《美的衡量》。这本书充斥了形形色色的数学公式,还有一页满满的印着各式各样的希腊骨灰瓮,并在每一个旁边都给了一个美的评分。

他还给很多不同的设计系统评分。其中比较有趣的是,在他的一百强名单里面,排行第二还是第三的是万十字章——他本身是同情纳粹的。我想这个图标的旋转方向要是反过来,对印度教来说可能有更大的宗教意义。我不认为可以衡量这些东西的美丑,但是他的确这样做了,而且也有其他人作了同样的尝试。

那么说,还没有人编出能评判程序的美丑程度的程序啰?

实际上还没有。有些软件工程师因评测的需要而尝试做这样的事情,我也不是很清楚。大家都知道,像你这样的记者或作家都有很多题材,你们需要量化数字来充实文字内容。例如,有人在开罗的冲突中丧生,你们就需要弄清楚是300人还是315人,这是新闻报道的必备部分。量化资料可以提升质量。我也在尝试寻找数字化的方法。不过,实际上软件工程师试图衡量的是某个程序员的优秀程度。其实他们去问老板就行了!

我觉得数字的使用是让人们在心里面能做个比较,例如20个人在这个事件中丧生,50个人在另外一个事件中丧生,那么人们通过对比就会觉得后面这个事件更为严重。

但这很可能其实是在用苹果和橙子比较。因为一旦涉及到数字,人们就可能篡改某些数据来扭曲事实。你也可以想象教育学生,总想着学生怎么样才能通过考试,然后你就可能会编写一本关于应试的书,而不是一本关于学习科学的书。

这样一来一切都是为了在学科考试中获取高分。然而问题是这些数字评分并不是总能很好的反映事物的本质。当你把一些事情量化了,假如你想的话你总是可以找到作弊的方法,因而也最终忘记了学习的初衷。

您曾经说过,您的工作从根本上是“关于如何辨别能够(在计算机科学领域)产生持续影响而非很快改变的东西”。这里的具体含义是什么呢?

我每天大约都会收到一份期刊,没有ITNOW啦(笑),但会有The Computer Journal。我的邮筒每周大约收到8份这样的期刊,那里面就是数量庞大的资料,其中就有些好内容。那么,我怎样决定哪些要写进去《计算机程序设计艺术》的呢?

我会尽力避开那些很快就会过时的内容,专注在将会有大范围应用的内容上。我要找出那些不是很难上手、能够成为多数人的常用工具的那些实际内容。什么是下一代的每个程序员都需要牢记的?我不会假装自己在每一件事情上都是正确的,但会努力辨别出那些能够吸引我的注意力的、令人无法忽视的、我们的下一代必须记住的知识。

那么我想您的作品中所选用的材料都是构建计算机科学的基石,而不是那些具时效性的枝节?

不错,但也有一些枝节的东西是可以在两三个段落中描述清楚并且容易理解的。那些需要花十页纸来才说得清的问题是很难被我选入书里的。我更倾向于选取那些通常只需要三页就可以阐释清楚、本质上有很高的实用性、并能很好地和书里面的其他内容熔炼在一起的算法。

就以我们从小学习的加法为例,假如你认真去想一想,你就会发现其应用之广泛是如此的不可思议。我们会在各种各样的场合中使用加法,而且日复一日从不间断。然而我们掌握的是加法的本质概念。我的书里面有许许多多类似的小概念,而对于这种我所需要的题材,我相信还有很多有待人们去研究发现。

即使是加法和算术,现在还有所谓的“无进位加法”或者叫“尼姆数加法”——那是大概一百年前在英国被发明的。一开始那只是计算机所擅长的一个游戏,而且它能和普通的加法结合使用;后来我们发现这种加法其实非常实用,因此我的新书中会解释为什么我们也许应该让小孩子们从五年级就开始学习它。当然这并不是说我们真正需要学习的都已经在幼儿园就学会了。事实远非如此简单,学习需要经过漫长的累积,才能像滴水穿石那样,在某天达到飞跃。

1999年,MIT邀请您就“信仰与科学的关系”这一普遍性主题做了六场公开演讲。十多年过去了,您对科学与精神性的关系的看法是否有什么改变呢?

我很高兴看到人们认为生命中存在某些超出人类理解能力的东西。做那些演讲的时候,我只是从壁橱中跳出来说:“计算机科学很美妙,但那不是一切。请不要期待我能够真正回答你的疑问。我要解释的是:我为什么会觉得仍旧存在神秘的事物是件好事。”

伴随着科学上不断推进的成就而来的是一种倾向,我们倾向认为自己可以认知所有的事物。然而,我感觉到,当我们愈加深入地思考,就越会认为自己不过刚刚开始。我们正以令人难以置信的速度在改变着许多事物,但我仍认为未来100年还将有更多需要探索的东西。

因此,人类还有很大的学习空间,而我们所已经学到的浩瀚知识,仍值得我们自豪。

收到MIT的邀请时,我想:如果我的一生中是需要至少一次机会去深究这个问题的,那恰恰就是此时此地了。我不会假装成这方面的专家,仅仅是觉得大家并没有真正花时间去思考这个问题。能在这么多人身上产生反响,我深感庆幸。

那个系列讲座有很好的上座率吗?

的确很好,几乎连站的位置都没有了!而且那还是一个相当大的讲堂。那个系列一共是六个讲座,第一个之后就放在了Dr. Dobbs的远程网络上面发布,而在接下来的五六年间被下载的次数也是令人吃惊之多。

所以说这个系列讲座必定是满足了某种需求。我其实并没有提供答案,而只是提出了一些问题。我认为那些都是我们生活中不可或缺的部分,为何不在公众场合中共同探讨呢?事实上我为前来参与的人数感到相当惊喜。

几年前我在Google给了一个关于相同主题的演讲,那是又一次座无虚席。而那次演讲更接近于我在图灵系列讲座中的“提问-回答”。与其什么都事先规划好,我更喜欢这种即席回应人们提问的形式。

我正想请教您怎样应对类似的挑战呢。对很多人来说,不知道自己即将需要回答哪些问题,是非常可怕的……

哈哈,没那么艰巨啊。即便我说错了什么,那也没啥大不了。压力也不是那么大啦,尤其是要跟首相回答记者问题相比较的话。我觉得奥巴马总统会觉得这种事情有压力,但小布什总统大概不会这样想。

我想小布什也会有他所擅长的……

我想大概是吧,不过我真不愿意卷入政治讨论,我还没有研究出一套关于政治的算法呢!

1975年,您出版过一本《婚姻的稳定性》(Marriages Stables)的手册,那是对算法分析的入门介绍?

那只是个小噱头,但那本书其实又是我在蒙特利尔做的一系列六个演讲的内容。那系列演讲的主题就不是“信仰和科学”了,而是集中在算法分析。我是以“稳定的婚姻”这一数学问题来展开讨论的。这个问题也可以看作男孩和女孩之间的游戏:他们各自去展现本身的状态,每个男孩都会对女孩做排名,反之亦然。我们会问自己:“我们要怎样运用一系列准则来将他们配对,使他们之间的关系是有稳定性的?”当有些人更多地欣赏对方而非自己的现有配偶时,关系就是不稳定的。我们总能找到方法以稳定的方式来配对这些男孩和女孩。

我们可以从数学上证明这是可行的。不过,这样的方法不止一种,因此我就可以引入算法分析来解释为什么某个方法比其他的更好。回到前面的观点,我最希望听众记住的是如何去领会这些算法的工作方式。因此,通过具体数学解决问题的方法,我们可以解决类似男孩女孩配对这样的趣味性问题。

如此说来,这个类比是帮助人们在脑海里对您的理论形象化?

是的。因此我可以得出一个普通的男孩将要进行一定次数的求爱,而不需要多久我们就能统计出每个结果的概率。你可以通过设计许多问题来让女孩们或男孩们得到最好的选择。在试图解决这个问题的过程中我们就能体会数学的各种美好。

我在那里通过六个讲座来讨论了这样一个问题,并与听众们进行了互动。尽管我当时使用的是英语而且我不通法语,但他们仍决定把整个讲座都翻译成法语,并最终以法语出版了那次讲座的书。而这本书二十年之后才又以英语再版。因而我也有了用我并不懂的语言出书的经历了。

看来您确实很喜欢挑战,六场演讲的系列讲座,一次还不过瘾,非要两次……

那是啊,每20年,我都会面临一次这样的挑战!那种感觉跟在家里埋头创作《计算机程序设计艺术》是很不一样的。我一直为这系列书籍搜集资料,已经几乎有50年啦。

今年您被邀请来做图灵系列讲座,请问对此您有什么特别感想吗?

我现在正在人生的一个转折点,庆祝我的两个经时数年的大项目进入收尾阶段。因此也是给这个系列讲座的最佳时间。事实上两年前我就曾经告诉他们,从那时算起两年之后会是一个合适的时间——到那时候我会放松下来,然后重新调整一下去迎接新的挑战。

我完成了我引以为豪的《计算机程序设计艺术》卷4A的写作,并在不到两周前刚刚收到第一本样书。此外我也完成了我累积的论文专著的第八卷。我把多年来我所写的所有的学术论文都出版成书。例如有一卷是关于印刷术的,因为我曾经研究过能使书籍变得更美观的软件。有一卷则收集了我所有关于算法分析的论文。还有一卷收集的是我针对非专业计算机读者写的较为通俗的论文。

最后这第八卷是关于趣味游戏的,我把它们当作甜品一样留到最后。因为这些论文纯粹是因为我喜欢而写的,写作过程也是最快乐的。我就是非常热爱这本关于趣味游戏的书,虽然我也不是很确定原因是什么。

我在同一天完成了这本书和《计算机程序设计艺术》卷4A的写作,并把它们分别寄给了各自的出版商。而也在同一个星期内收到了这两本书的样书,这确实让我心花怒放。我非常庆幸在完成它们的过程中我没有生病,也没有发生世界大战。我也很高兴它们终于圆满完成了,我再也不用为它们操心了。

我们BCS一直致力于提高IT行业的专业性。请问您在这方面的意见,是IT行业仅仅需要自我监管,还是需要进一步的引导呢?

我是编写程序的人,并没有合适的资格来评论这一点。英国的同业协会和共济会有着悠久的传统,在我所知道的范围内,它们能将行业引导到优良的质量标准。不过,对某些行业而言,它们做得有点过度了。行会的人能够判定成员是否值得雇用、是否能提供有价值的服务,这不太好。实际上,当今的通信手段已经大幅改善,很难再用所谓的“浮报雇佣”的做法来掩盖不够好的做法。

您觉得IT行业是否背负了充斥着极客和书呆子的坏名声?

这还真是挺有趣的,因为其实有个英国作家曾经有一个大致名为“每周极客”的博客,而我还因为曾被他评上一次而感到光荣。我想不起那个作家的名字了,这件事大概是发生在两年前的。现在还有人谈论“极客风格”——极客这个词变得更为普罗大众所接受,人们也不再羞于承认自己是个极客了。书呆子就有点不同。

我的感觉是现在人们会自诩为极客,大家也理解这个名称在当今时代已经有着不同的内涵,这跟几年前相比肯定是不同的。

即使是文字工作者,有时候也很难解释为什么有些词语会受到追捧,而有些则会日渐被遗弃,但很明显极客这个名称正处在它的上升期。我也不一定是正确的,但是在我那本关于趣味游戏的书里面有一章名为“极客艺术品”,我觉得这个题目很恰当,因为它所涵盖的恰恰就是那些我希望在自己家里收藏的艺术品。

对您而言,在过去的五六年间,计算机科学的竞技场中哪些是最重要的成就呢?

我认为那是千千万万的人们可以协同工作这一事实。如果在每年年底要问哪一项才是当年最大突破的成果,那可能真的想不到什么。不过,五年之后,整个领域却已天翻地覆。究其原因,正在于每一个分支都在不断进步。

偶尔,会出现一些其后被视作重大进步的成果,例如Web的诞生,但它们实际发生的时候,却是没有人能准确认识到其重要性的。这种情况跟中国当年建造长城很类似,每个工匠都去添砖加瓦,多如恒河沙数的人们最终成就了这一非凡的团队作品。大家都在自我挑战并相互学习,这是我理解的所谓成就。

您觉得计算机科学在现在或者不久的将来将面对的最大的问题或是挑战会是什么呢?

最大的挑战就是面对将来那么多有待攻克的未知,我们每天晚上如何安枕!作为一个美国人我非常崇拜(也有些许嫉妒)我所了解到的(我的孙子在这里出生)英国的医疗保障系统。但是我觉得仍有许多可以地方可以通过计算机的协助来改善,例如更好地保存医疗档案,更好地描述和视像化综合的症状,更好地组合运用统计和视像化的方法,等等,这些都会大大的帮助医生们迅速而清晰地理解情况。

更不用说计算机能帮助生物学家设计更好的药物。你所见到的每一个可以改善的地方都需要一个好的程序员的协助。我们从来都不会缺乏挑战性的问题,而且未来也不见得会。

我在前面说过大概50个人里面会有一个像我这样的极客,但是我担心在未来的数年极客会越发的供不应求。我也可能是错的——也可能下一代会有十分之一的极客,但是我对此表示怀疑。为了让计算机去完成那些任务,我们非常需要这些身负奇才的人来设计和运行程序。

您觉得,人工智能上的那个老掉牙的说法是否能最终解决?

我认为我们距离这一怪圈还不是很近,但人类和机器最终仍会一起面临这个问题。

必须指出,我的同事、斯坦福大学校长John Hennessy曾经说过,五年之内将出现计算机的大崩溃,就像金融海啸那样。原因是人们已经变得如此依赖计算机,简直是没有它们就活不了了。人类铁定有一天会忘记了如何做事,而原因正是对机器的过度依赖。我们不记得没有这些机器的时候是怎样做事的,这将导致大崩溃。

您曾经说过“今天所有关于计算机的一切都让我惊喜,没有一样东西我是能在三十年前就预测到的”。如果你是一个科幻小说作者,你会对未来五十年做怎么样的预测呢?

我真高兴你找到了我说的那句话。无论如何,事实就是如此!

悲观地看,我觉得我们无法解决能源困境,除非有一天出现了能很好处理废材的增殖反应堆。在十九世纪英国有人提出过一个Jevons悖论。我想他的名字应该是Stanley Jevons。

有人发现了如何让铁路系统省十倍的煤,结果是铁路系统因此消耗了一百倍更多的煤。原因是这个改进让更多的人使用铁路来运输货物。换句话说当你提高了某样事物的效率,必然导致它吸引来更多的用户。

你不会说我们需要X那么多石油来完成我们要做的事情,因为事实上我们如果有更多的石油我们就会去做更多的事情。事实上就是我们的胃口是永远无法满足的。因此我觉得我们的能源困境也会持续下去。

乐观的情形就是因此每个人都将爱上了算法分析和设计美妙的程序——那不就是一个很好的将来吗?!


《美国科学家》(American Scientist)杂志曾将《计算机程序设计艺术》与爱因斯坦的《相对论》、狄拉克的《量子力学》等书并列为20世纪最重要的12本科学类专著。

全球当下最厉害的14位程序员(最伟大的程序员高德纳)(2)

比尔·盖茨曾经花几个月研读《计算机程序设计艺术》,并这样对广大程序员说:如果你自以为是一个很好的程序员,请去读读高德纳的《计算机程序设计艺术》吧……要是你真把它读下来了,就毫无疑问可以给我递简历了。

高德纳作品中文版

全球当下最厉害的14位程序员(最伟大的程序员高德纳)(3)

作者者:高德纳

译著者:李伯民 范明 蒋爱军

出版社:人民邮电出版社

出版年:2015年12月

《卷1:基本算法(第3版)》讲解基本算法,其中包含了其他各卷都需用到的基本内容。本卷从基本概念开始,然后讲述信息结构,并辅以大量的习题及答案。

作者者:高德纳

译著者:巫斌 范明

出版社:人民邮电出版社

出版年:2016年7月

《卷2:半数值算法(第3版)》全面讲解了半数值算法,分“随机数”和“算术”两章。书中总结了主要算法范例及这些算法的基本理论,广泛剖析了计算机程序设计与数值分析间的相互联系。

作者者:高德纳

译著者:贾洪峰

出版社:人民邮电出版社

出版年:2017年3月

《卷3:排序与查找(第2版)》扩展了卷1中信息结构的内容,主要讲排序和查找。书中对排序和查找算法进行了详细的介绍并对各种算法的效率做了大量的分析。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页