高德納

高德納（Donald Ervin Knuth，音譯唐納德·爾文·克努斯，1938年1月10日），出生於美國密爾沃基，著名電腦科學家及數學家，史丹福大學電腦系榮譽退休教授。高德納教授為現代電腦科學的先驅人物，創造了演演算法分析的領域，在數個理論電腦科學的分支做出基石一般的貢獻。在電腦科學及數學領域發表了多部具廣泛影響的論文和著作。1974年圖靈獎得主。

高德納所寫的《電腦程式設計藝術》（The Art of Computer Programming）是電腦科學界高度敬重的參考書籍之一。他也是排版軟體和字型設計系統Metafont的發明人。此外，他還曾提出文學編程的概念，並創造了WEB與CWEB軟體，作為文學編程開發工具。

## 名稱

高德納的英文名直譯為唐納德·爾文·克努斯（Knuth發音為/kənuːθ/），「高德納」這個中文名字是1977年他訪問中國之前所取的，命名者是儲楓（姚期智的夫人，電腦科學家，2004年至2011年在香港城市大學電腦科學系擔任系主任）。

## 簡歷

### 早年

高德納出生於於美國威斯康辛州密西根湖邊的密爾瓦基。密爾瓦基是一個山靈水秀、人才輩出的地方，諾貝爾獎得主司馬賀（H. A. Simon）也是在這裡出生的。他父親 Ervin Henry Knuth是德裔美國人，母親是 Louise Marie Bohning。父親有研究生學歷，是一個多才多藝的人，星期天在教堂演奏風琴，在自家地下室經營一個小印刷廠，並在高德納就讀的 Milwaukee Lutheran High School中學教簿記。

### 中學時期

高德納在中學時期就已經展現出學術天分，初中二年級，當地的Ziegler糖果公司為了促銷其稱為Giant Bar的一種棒棒糖，在學校中辦了一個比賽，看誰能用Ziegler's Giant Bar中的字母排列組合出最多的單詞。高德納假裝胃疼，在家裡待了兩個星期，利用一部大字典，得出了4,500個單詞，而裁判只掌握了約2,500多個單詞，他的班級贏得冠軍，獲得一台電視機和每人一塊Giant Bar，而他本人則贏得一副雪橇。

### 大學時期

1956年，高德納以各科平均97.5分的創記錄的高分從中學畢業。由於高德納對物理和音樂都很有興趣，他曾猶豫大學要唸物理還是音樂，後來他決定念物理，進入俄亥俄州克利夫蘭的凱斯理工學院（現在併入凱斯西儲大學）攻讀物理。在此時期，他接觸到當時最先進的大型電腦 IBM 650，他讀過了電腦的手冊後，認為自己可以幫IBM 650寫出更好的編譯程式，便動手開始做。

1959年，高德納成了第一屆Engineering and Science Review 期刊的編輯，該期刊是當時最好的工程科學期刊，獲得了國家獎。高德納從主修物理改成主修數學。1960年，高德納從凱斯理工學院畢業時，由於他的傑出表現，同時獲得學士與碩士學位。

### 博士生研究時期

1960年，高德納進入加州理工學院研究所，研究所二年級時，為私人公司寫編譯器，賺得5,000元美金。1962年1月Addison-Wesley公司的顧問理查·瓦嘎（Richard Varga）請他出版一本有關編譯器的書籍。1963年，高德納獲得加州理工學院數學博士學位，指導教授是數學家馬紹爾·哈爾。

### 學術成就

高德納畢業之後留在加州理工學院任教，並在數學與電腦程式設計領域取得多項成就。

1966年，當高德納的著作已經長達3000多頁時，他與出版商商定，編纂一部系統地介紹電腦程式設計的巨著《電腦程式設計藝術》。截至2018年12月，該書已經出版了4卷，並對電腦領域產生了深遠的影響。高德納本人預計第5卷將會在2025年完稿。《科學美國人》雜誌曾將該書與愛因斯坦的《相對論》、狄拉克的《量子力學原理》、理查·費曼的《量子電動力學》等書並列為20世紀最重要的12本物理科學類專論書之一。

1968年，高德納拒絕了美國國家安全局的工作邀請，受聘成為史丹福大學電腦系教授，直到退休，其間1972—1973年曾經在奧斯陸大學當客座教授。和他的一個學生開發了克努斯-莫里斯-普拉特演算法（KMP演算法），該法則使電腦在文章中搜索一串字符的過程更加連貫。他在擔任該職務期間開發了排版軟體，成為今天大多數科技書籍使用的排版程序。除此之外高德納還在電腦領域作出了多項貢獻，例如LR解析理論（LR parsing theory）、克努斯-莫里斯-普拉特模式（Knuth-Moris-Pratt pattern）等。

1979年卡特總統頒與國家科學獎。1996年11月榮獲京都獎。

## 個人生活

### 婚姻

高德納與妻子高精蘭（Jill）定居於斯坦福大學校園內，育有一兒高小強（取名John）和一女高小珍（取名Jennifer）。

### 性格

很多人都認為高德納非常有趣。他會獎勵每一個找出他的著作中任何錯誤的人，就能得到2.56美元，因為「256美分剛好是十六進位的一美元」（256 pennies is one hexadecimal dollar）

另外，對於每個「有價值的建議」，他設立了0.32美元的獎金。高德納可以算是一名標準的黑客，他最喜歡的軟體是Emacs，並曾向其作者理查·史托曼提交修改提案。

與大多數傳統黑客一樣，高德納酷愛音樂。高中的時候，Knuth興趣所在並非數學，而是音樂，尤其是聽音樂和作曲。他一度還曾考慮報考音樂專業。他在他的書房中放了一個特別定製的84管的管風琴。除此之外他也會吹薩克斯風和大號。

高德納的作品《歌曲的計算複雜度》（The Complexity of Songs）曾兩度刊印在電腦協會期刊上。

## 著作

高德納的《電腦程式設計藝術》計劃出版7卷，該書自第3卷於二十世紀七十年代初版以來，一直沒有下一卷的進展。因此他自1990年起就停止使用電子郵件（高德納自1975年就開始使用電子郵件）以專心撰寫餘下的4卷。

在電腦科學以外，高德納亦著有論述基督教信仰的書籍，如《3:16 Bible Texts Illuminated》（1991年，ISBN 0-89579-252-4），以及《Things A Computer Scientist Rarely Talks About》（2001年，ISBN 1-57586-326-X），這些被視為電腦科學家少有的作品。

## 榮譽

- 1971年獲首屆美國電腦協會Grace Murray Hopper獎
- 1973年當選為美國人文與科學院院士
- 1974年獲ACM協會圖靈獎
- 1975年當選為美國國家科學院院士
- 同年榮獲美國數學協會Lester R. Ford獎
- 1979年獲卡特總統頒發美國國家科學獎章
- 1981年當選為美國工程院院士
- 1982年獲電腦先鋒獎（Computer Pioneer Award）
- 1982年成為IEEE榮譽會員
- 1986年榮獲美國數學學會Steele Award
- 1988年獲富蘭克林獎章
- 1994年獲瑞典科學院Adelskold獎
- 1995年獲IEEE馮·諾伊曼獎
- 1996年獲Inamori基金會京都先進技術獎（Kyoto Prize for Advanced Technology）

## 基本資料

- 日語原文：高德納
- 原文名：Donald Knuth
- 出生日期：1938年1月10日
- 出生地：美國威斯康星州密爾沃基
- 國籍：美國
- 研究領域：電腦科學
- 機構：史丹福大學
- 母校：凱斯理工學院、加州理工學院
- 博士導師：馬紹爾·哈爾
- 博士生：Leonidas J. Guibas、Scott Kim、沃恩·普拉特、羅伯特·塞奇威克、Jeffrey Vitter、Bernard Marcel Mont-Reynaud
- 知名於：《電腦程式設計藝術》、TeX, METAFONT, Computer Modern、Knuth–Morris–Pratt演算法、Knuth-Bendix completion algorithm、MMIX
- 獲獎：馮·諾伊曼獎（1995）、圖靈獎（1974）、京都獎（1996）