计算机程序设计艺术

高德纳系列书籍

计算机程序设计艺术》(英語:The Art of Computer Programming),簡稱TAOCP,是美國電腦科學家高德纳Donald Ervin Knuth)编著的关于计算机程序设计之七卷本著作。作者並因此获得美国计算机协会1974年图灵奖[1]

概述编辑

高德纳

1962年,高德纳還是個研究生的時候就開始了程式設計的工作,在攻讀博士期間,艾迪生韋斯利公司(Addison-Wesley)的顧問Richard Varga找他出書,因課業繁忙,一時沒時間草稿。1963年高德納獲得加州理工學院數學博士學位,開始投入撰寫工作。1968年,當時31歲的高德納完成前六卷並首次出版,一口氣寫了三千多頁,自此他計劃寫7卷。1999年底被《美國科學家》(American Scientist)期刊列为20世纪最佳12部学术专著之一,与狄拉克的「量子力学」、爱因斯坦的「相对论」、本華·曼德博的「分形论」、鲍林的「化学键」、罗素阿爾弗雷德·諾斯·懷海德的《數學原理》、約翰·馮·諾伊曼和摩根斯坦的「博弈论」、维纳的「控制论」、伍德沃霍夫曼的「轨道对称性」、费曼的「量子电动力学」等科学史上的重要著作并列必讀經典[2]。至1976年,已賣出超過一百萬冊。

任何人發現書上的錯誤,都可以向他舉發,並領取2.56美元,因為「256美分剛好是十六進位的一美元」(256 pennies is one hexadecimal dollar.)[註 1]比爾·蓋茨在1995年說,“如果你認為你是一名真正優秀的程序員,就去讀第一卷,確定可以解決其中所有的問題。”“如果你能讀懂整套書的話,請給我發一份你的簡歷。”《計算機程序設計藝術》是高德纳一生中最重要的事業,他寫這本書的目的是“組織和總結所知道的計算機方法的相關知識,並打下堅實的數學、歷史基礎”。

同時高德纳在進行第二卷的校樣時,發覺書商把他書中的數學式子排得太難看了,因此發明數學排版軟體TeX,和字形设计系统METAFONT。等到他再回來要寫第四冊的時候,發現他想討論的東西,現在都寫成API[來源請求]。1992年高德纳自大學退休,處於隱居的生活,退休的原因是為了完成TAOCP這部巨著,他估計大約要花20年來完成。第四冊預計分為A、B、C、D四個分卷出版,其中A分卷已于2005年和2011年陸續出版了平裝本和精裝本。

章節编辑

  • 第一冊 - 基礎演算法(Fundamental Algorithms)
    • 第一章 - 基本概念(Basic concepts)
    • 第二章 - 資訊結構(Information structures)
  • 第二冊 - 半數值演算法(Seminumerical Algorithms)
    • 第三章 - 隨機數(Random numbers)
    • 第四章 - 算术(Arithmetic)
  • 第三冊 - 排序與搜尋(Sorting and Searching)
    • 第五章 - 排序(Sorting)
    • 第六章 - 搜尋(Searching)
  • 第四冊 - 組合演算法(Combinatorial Algorithms),準備中(至2009年4月已出版五個分冊),測試版本已上載到Knuth's的網站页面存档备份,存于互联网档案馆))。
    • 第4A卷 - 列舉與回溯(Enumeration and Backtracking)
      • 第七章 - 組合的搜尋(Combinatorial searching)
    • 第4B卷 - 圖形與網路演算法(Graph and Network Algorithms)
      • 第七章 - 續(continued)
    • 第4C及4D(可能)卷 - 最佳化與遞歸(Optimization and Recursion)
      • 第七章 - 續(continued)
      • 第八章 - 遞歸(Recursion)
  • 第五冊 - 造句演算法(Syntactic Algorithms),計劃中(預計2020年完成)。
    • 第九章 - 語句掃瞄(Lexical scanning)
    • 第十章 - 剖析技術(Parsing techniques)
  • 第六冊 - 與上下文無關語言理論(Theory of Context-Free Languages),計劃中。
  • 第七冊 - 編譯器技術(Compiler Techniques),計劃中。

章节概述编辑

第4A卷 - 列舉與回溯编辑

  • 7 - 導言(82pp)- 出版於第4卷,第0分冊
    • 7.1 - 零和一(Zeros and ones)
      • 7.1.1 - Boolean basics (88 pp) - 出版於第4卷,第0分冊
      • 7.1.2 - 布尔运算(Boolean evaluation)(67 pp) - 出版於第4卷,第0分冊
      • 7.1.3 - Bitwise tricks and techniques (122 pp) - 出版於第4卷,第1分冊
      • 7.1.4 - Binary decision diagrams (150 pp) - 出版於第4卷,第1分冊
    • 7.2 - Generating all possibilities
      • 7.2.1 - Combinatorial generators(397 pp)
        • 7.2.1.1 - Generating all n-tuples - 出版於第4卷4,第2分冊
        • 7.2.1.2 - Generating all permutations - 出版於第4卷,第2分冊
        • 7.2.1.3 - Generating all combinations - 出版於第4卷,第3分冊
        • 7.2.1.4 - Generating all partitions - 出版於第4卷,第3分冊
        • 7.2.1.5 - Generating all set partitions - 出版於第4卷,第3分冊
        • 7.2.1.6 - Generating all trees - 出版於第4卷,第4分冊
        • 7.2.1.7 - History and further references - 出版於第4卷,第4分冊

第4B卷 - 圖论與網路演算法编辑

      • 7.2.2 - Basic backtrack
      • 7.2.3 - Efficient backtracking
    • 7.3 - Shortest paths
    • 7.4 - Graph algorithms
      • 7.4.1 - Components and traversal
      • 7.4.2 - Special classes of graphs
      • 7.4.3 - Expander graphs
      • 7.4.4 - Random graphs
    • 7.5 - Network algorithms
      • 7.5.1 - Distinct representatives
      • 7.5.2 - The assignment problem
      • 7.5.3 - Network flows
      • 7.5.4 - Optimum subtrees
      • 7.5.5 - Optimum matching
      • 7.5.6 - Optimum orderings
    • 7.6 - Independence theory
      • 7.6.1 - Independence structures
      • 7.6.2 - Efficient matroid algorithms

第4C及4D卷 - 最佳化與遞歸编辑

    • 7.7 - Discrete dynamic programming(也见传递矩阵法
    • 7.8 - Branch-and-bound techniques
    • 7.9 - Herculean tasks (又名NP-hard問題)
    • 7.10 - Near-optimization
  • 8 - 遞歸(Recursion)

英文版本编辑

當前版本编辑

按卷排序:

  • 第一卷: Fundamental Algorithms. Third Edition (Reading, Massachusetts: Addison-Wesley, 1997), xx+650pp. ISBN 0-201-89683-4
  • 第一卷,第一分冊: MMIX -- A RISC Computer for the New Millennium. (Addison-Wesley, February 14, 2005) ISBN 0-201-85392-2(will be in the fourth edition of volume 1)
  • 第二卷: Seminumerical Algorithms. Third Edition (Reading, Massachusetts: Addison-Wesley, 1997), xiv+762pp. ISBN 0-201-89684-2
  • 第三卷: Sorting and Searching. Second Edition (Reading, Massachusetts: Addison-Wesley, 1998), xiv+780pp.+foldout. ISBN 0-201-89685-0
  • 第四卷,第零分冊: Introduction to Combinatorial Algorithms and Boolean Functions, (Addison-Wesley Professional, April 28, 2008) vi+240pp, ISBN 0-321-53496-4
  • 第四卷,第一分冊: Bitwise tricks & techniques; Binary Decision Diagrams (Addison-Wesley Professional, March 27, 2009) viii+260pp, ISBN 0-321-58050-8
  • 第四卷,第二分冊: Generating All Tuples and Permutations, (Addison-Wesley, February 14, 2005) v+127pp, ISBN 0-201-85393-0
  • 第四卷,第三分冊: Generating All Combinations and Partitions. (Addison-Wesley, July 26, 2005) vi+150pp, ISBN 0-201-85394-9
  • 第四卷,第四分冊: Generating all Trees -- History of Combinatorial Generation, (Addison-Wesley, February 6, 2006) vi+120pp, ISBN 0-321-33570-8

以前版本编辑

按出版日期排序:

中譯本编辑

注释编辑

  1. ^ 1999年,高德纳教授腾出时间回覆了所有信件,共汇出125张支票。其中Axel Böttcher曾先后5次得到2.56美元的支票,3次得到5.12美元的支票。

参考文献编辑

外部链接编辑

🔥 Top keywords: Baike: 首页Special:搜索九龍城寨之圍城胖猫跳江事件Energy (組合)淚之女王背着善宰跑逆天奇案2金智媛习近平郭葦昀金秀賢 (男演員)不夠善良的我們九龍寨城邊佑錫伍允龍春色寄情人劉俊謙 (香港)張書偉怪獸8號虽然不是英雄葉乃文謝坤達神耆小子六四事件我的婆婆怎麼那麼可愛排球少年!!角色列表唐振剛2024年湯姆斯盃Seventeen (組合)蕭景鴻排球少年!!WIND BREAKER—防風少年—安東尼·愛德華茲 (籃球運動員)ILLIT中华人民共和国中華民國BABYMONSTER與鳳行張文傑BOYNEXTDOOR彭丽媛笑看風雲日本母亲节习明泽金惠奫徐巧芯從Lv2開始開外掛的前勇者候補過著悠哉異世界生活德雷克 (歌手)搜查班長1958支配物种乘風2024張員瑛承欢记嚴爵香港梅龍高速公路塌陷事故柯建銘葬送的芙莉蓮迷宮飯轉生貴族憑鑑定技能扭轉人生~繼承弱小領土後,招募優秀人才打造最強領土~为人民服务 (2022年电影)黃道十二宮IVE (組合)草榴社区歐倩怡沒有秘密周雨彤柯佳嬿無職轉生~到了異世界就拿出真本事~謝京穎埃马纽埃尔·马克龙破墓周處除三害 (電影)許瑋甯Twitter五月天打天下2逆天奇案李主儐大谷翔平家族榮耀之繼承者胡子彤郭晉安毛泽东Baike: 分類索引沈伯洋白紙運動文化大革命城市猎人 (2024年电影)2024年花蓮地震(G)I-DLE城市猎人朴成焄郭宁宁2024年優霸盃哥吉拉-1.0汤姆斯杯