426 篇文章 19 订阅

# The Art of Computer Programming (TAOCP)

The Art of Computer Programming

1968 年，高德纳（Donald Ervin Knuth）完成了《计算机程序设计艺术》这套书的第一卷：《基本算法》，这套书后来被誉为计算机科学领域的圣经，截至目前已有 4 卷问世（规划共 7 卷），分别是：基本算法、半数值算法、排序与查找以及组合算法。高德纳本人也凭借此书获得了 1974 年的图灵奖，并至今保持着最年轻获奖者的记录。

https://www-cs-faculty.stanford.edu/~knuth/taocp.html

by Donald E. Knuth.

(photo of TAOCP, 1968–2015, by Héctor García-Molina)

At the end of 1999, these books were named among the best twelve physical-science monographs of the century by American Scientist, along with: Dirac on quantum mechanics, Einstein on relativity, Mandelbrot on fractals, Pauling on the chemical bond, Russell and Whitehead on foundations of mathematics, von Neumann and Morgenstern on game theory, Wiener on cybernetics, Woodward and Hoffmann on orbital symmetry, Feynman on quantum electrodynamics, Smith on the search for structure, and Einstein's collected papers. Wow!

View “historic” publisher's brochure from the first edition of Volume 1 (1968)

### eBook versions

These volumes are now available also in portable electronic form, using PDF format prepared by the experts at Mathematical Sciences Publishers. Special care has been taken to make the search feature work well. Thousands of useful "clickable" cross-references are also provided --- from exercises to their answers and back, from the index to the text, from the text to important tables and figures, etc.

The authorized PDF versions can be purchased at www.informit.com/taocp. If you have purchased a different version of the eBook, and can provide proof of purchase of that eBook, you can obtain a gratis PDF verson by sending email and proof of purchase to taocp@pearson.com.

### Volume 1

Volume 1 Fascicle 1, MMIX: A RISC Computer for the New Millennium (2005), v+134pp. ISBN 0-201-85392-2

Translations of previous editions:
Romanian translation by Adrian Davidoviciu, Adrian Petrescu, Smaranda Dimitriu, and Paul Zamfirescu, Tratat de programarea calculatoarelor, V. 1: Algoritmi fundamentali (Bucharest: Editura tehnica, 1974), 676pp.
Russian translation by Galina P. Babenko and Iu. M. Baiakovskii, edited by K. I. Babenko, and V. S. Shtarkman, Iskusstvo programmirovaniia dlia ÉVM, T. 1: Osnovnye algoritmy (Moscow: Mir, 1976), 735pp.
Japanese translation, under direction of Takakazu Simauti, in two volumes:

• Chapter 1, by Ken Hirose, Kihon Sampô / Kiso Gainen (Tokyo: Saiensu-Sha, 1978), 22+331pp.;
• Chapter 2, by Nobuo Yoneda and Katsuhiko Kakehi, Kihon Sampoô / Jôhô Kôzô (Tokyo: Saiensu-Sha, 1978), 8+373pp.

Chinese translation by Guan JiWen and Su Yunlin, Ji Suan Ji Cheng Xu She Ji Ji Qiao, 1. Juan: Ji Ben Suan Fa (Beijing: Defense Industry Publishing Co., 1980), 14+573pp.
Spanish translation by Michel Antscherl Harlange and Joan Lluis i Biset, under direction of Ramón Puigjaner i Trepat, El Arte de Programar Ordenadores, V. 1: Algoritmos Fundamentales (Barcelona: Reverté, 1980), xxiii+672pp.
Hungarian translation, under direction of Miklós Simonovits, A számítógép-programozás művészete, V. 1: Alapvető algoritmusok (Budapest: Műszaki Könyvkiadó, 1987), 654pp.

Translations of the third edition:
Russian translation by S. G. Trigub, Yu. G. Gordienko, and I. V. Krasikov, edited by S. N. Trigub and directed by Yu. V. Kozachenko, Iskusstvo programmirovaniia, T. 1: Osnovnye algoritmy (Moscow: Vil'iams, 2000), 713pp; Victor Shtonda's blog about reprints of the Russian translations
Chinese translation by Su Yunlin, Ji Suan Ji Cheng Xu She Ji Yi Shu, 1. Juan: Ji Ben Suan Fa (Beijing: National Defense Industry Press, 2002), xx+625pp.
Chinese translation by Li Bomin, Fan Ming, and Jiang Aijun, Ji Suan Ji Cheng Xu She Ji Yi Shu, 1. Juan: Ji Ben Suan Fa (Beijing: Posts & Telecom Press, 2016), xv+517pp.
Polish translation by G. Jakacki, Sztuka Programowania, T. 1: Algorytmy Podstawowe (Warsaw: Wydawnictwa Naukowo-Techniczne, 2002), xxiv+679pp.
Romanian translation by Mihaela Târpa, Arta programării calculatoarelor, V. 1: Algoritmi fundamentali (Bucharest: Editura Teora Bucuresti, 2002), 616pp.
Japanese translation by Takashi Aoki, Kazuhiko Kakehi, Kenichi Suzuki, and Takahiro Nagao, supervised by Makoto Arisawa and Eiiti Wada (Tokyo: ASCII Corporation, 2004), xxii+632pp. Republished (softcover) by ASCII DWANGO in 2015.
Korean translation by Ryu Gwang, 컴퓨터 프로그래밍의 예술 1: 기초 알고리즘 (Seoul: Hanbit Media, 2006), 793pp.
German translation by Rüdiger Loos (Heidelberg: Springer Verlag), to appear.
Czech translation by David Krásenský, Umění programování, 1. díl: Základní algoritmy (Brno: Computer Press, 2008), xx+649pp.
[A Czech translation is also scheduled to be published by Albatros Media A.S.]
Macedonian translation (Skopje: Prosvetno Delo), in preparation.

Translations of fascicles:
Romanian translation of Volume 1 Fascicle 1, by Ioan Bledea: MMIX: Un calculator RISC pentru noul mileniu (Bucharest: Editura Teora, 2005), ix+149pp.
Japanese translation of Volume 1 Fascicle 1, by Takashi Aoki, supervised by Makoto Arisawa and Eiiti Wada (Tokyo: ASCII Corporation, 2006), vii+134pp.
Republished (softcover) by ASCII DWANGO in 2015.
Russian translation of Volume 1 Fascicle 1, by Yu. G. Gordienko, edited by S. N. Trigub, MMIX --- RISC-komp'iuter dlia novogo tysiacheletiia (Moscow: Vil'iams, 2007), 151pp.
Polish translation of Volume 1 Fascicle 1, by G. Jakacki: MMIX --- komputer na nowe tysiąclecie (Warsaw: Wydawnictwa Naukowo-Techniczne, 2008), xii+146pp.
Hungarian translation of Volume 1 Fascicle 1, under the direction of Antal Iványi: MMIX. RISC számítógép a következő évezredre (Budapest: AnTonCom Infokommunikációs Kft., 2009), 168pp.

### Volume 2

ISBN 0-201-89684-2

Translations of previous editions:
Russian translation by Galina P. Babenko, É. G. Belaga, and L. V. Maiorov, edited by K. I. Babenko, Iskusstvo programmirovaniia dlia ÉVM, T. 2: Poluchislennye algoritmy (Moscow: Mir, 1977), 724pp.
Japanese translation, under direction of Takakazu Simauti, in two volumes:

• Chapter 3, by Masaaki Sibuya, Jun Suchi Sampô / Ransû (Tokyo: Saiensu-Sha, 1982), ii+259pp.;
• Chapter 4, by Keisuke Nakagawa, Jun Suchi Sampô / Sanjutsu Enzan (Tokyo: Saiensu-Sha, 1986), xii+536pp.

Romanian translation by Florian Petrescu, Ioan Georgescu, Rolanda Predescu, and Paul Zamfirescu, Tratat de programarea calculatoarelor, V. 2: Algoritmi seminumerici (Bucharest: Editura tehnica, 1983), 722pp.
Chinese translation by Guan JiWen and Su Yunlin, Ji Suan Ji Cheng Xu She Ji Ji Qiao, 2. Juan: Ban Shu Zhi Suan Fa (Beijing: Defense Industry Publishing Co., 1992), 10+622pp.
Hungarian translation, under direction of Miklós Simonovits, A számítógép-programozás művészete, V. 2: Szeminumerikus algoritmusok (Budapest: Műszaki Könyvkiadó, 1987), 690pp.

Translations of the third edition:
Russian translation by L. F. Kozachenko, V. T. Tertyshnyi, and I. V. Krasikov, edited by S. N. Trigub and directed by Yu. V. Kozachenko, Iskusstvo programmirovaniia, T. 2: Poluchislennye algoritmy (Moscow:Vil'iams, 2000), 830pp.
German translation of Chapter 4 by Rüdiger Loos Arithmetik (Heidelberg: Springer Verlag, 2001), xiii+538pp.
Chinese translation by Su Yunlin, Ji Suan Ji Cheng Xu She Ji Yi Shu, 2. Juan: Ban Shu Zhi Suan Fa (Beijing: National Defense Industry Press, 2002), xii+760pp.
Romanian translation by Mihaela Târpa, Cora Radulian, and Mihai Iosif, Arta programării calculatoarelor, V. 2: Algoritmi seminumerici (Bucharest: Editura Teora Bucuresti, 2002), 663pp.
Polish translation by Adam Malinowski, Sztuka Programowania, T. 2: Algorytmy Seminumeryczne (Warsaw: Wydawnictwa Naukowo-Techniczne, 2002), xviii+820pp.
Japanese translation by Hiroaki Saito, Takahiro Nagao, Shogo Matsui, Takao Matsui, and Hitoshi Yamauchi, supervised by Makoto Arisawa and Eiiti Wada (Tokyo: ASCII Corporation, 2004), xvi+725pp. Republished (softcover) by ASCII DWANGO in 2015.
Korean translation by Ryu Gwang, 컴퓨터 프로그래밍의 예술 2: 준수치적 알고리즘 (Seoul: Hanbit Media, 2007), 933pp.
Macedonian translation (Skopje: Prosvetno Delo), in preparation.
Czech translation by David Krásenský, Umění programování, 2. díl: Seminumerické algoritmy (Brno: Computer Press, 2010), xii+763pp.
[A Czech translation is also scheduled to be published by Albatros Media A.S.]

### Volume 3

ISBN 0-201-89685-0

Translations of the first edition:
Romanian translation by Rodica Boconcios, A. Davidoviciu, P. Dimo, Fl. Moraru, A. Petrescu, I. Sipos, and Smaranda Dimitriu, Tratat de programarea calculatoarelor, V. 3: Sortare şi căutare (Bucharest: Editura tehnica, 1976), xii+736pp.
Russian translation by Nadezhda I. V'iukova, V. A. Galatenko, and A. B. Khodulev, edited by Iu. M. Baiakovskii and V. S. Shtarkman, Iskusstvo programmirovaniia dlia ÉVM, T. 3: Sortirovka i poisk (Moscow: Mir, 1978), 844pp.
Chinese translation by Guan JiWen and Su Yunlin, Ji Suan Ji Cheng Xu She Ji Ji Qiao, 3. Juan: Pai Xu He Cha Zhao (Beijing: Defense Industry Publishing Co., 1985), viii+645pp.
Spanish translation by Jaime de Argila y de Chopitea and Ramón Puigjaner Trepat, under direction of Ramón Puigjaner Trepat, El Arte de Programar Ordenadores, V. 3: Clasificación y Búsqueda (Barcelona: Reverté, 1980), xxiii+672pp.
Hungarian translation, under direction of Miklós Simonovits, A számítógép-programozás művészete, V. 3: Keresés és rendezés (Budapest: Műszaki Könyvkiadó, 1988), 761pp.

Translations of the second edition:
Russian translation by V. T. Tertyshnyi and I. V. Krasikov, edited by S. N. Trigub and directed by Yu. V. Kozachenko, Iskusstvo programmirovaniia, T. 3: Sortirovka i poisk (Moscow: Vil'iams, 2000), 823pp.
Chinese translation by Su Yunlin, Ji Suan Ji Cheng Xu She Ji Yi Shu, 3. Juan: Pai Xu Yu Cha Zhao (Beijing: National Defense Industry Press, 2002), x+779pp.
Polish translation by K. Diks and A. Malinowski, Sztuka Programowania, T. 3: Sortowanie i Wyszukiwanie (Warsaw: Wydawnictwa Naukowo-Techniczne, 2002), xviii+838pp.
Romanian translation by Mihaela Târpa, Arta programării calculatoarelor, V. 3: Sortare şi căutare (Bucharest: Editura Teora Bucuresti, 2002), 680pp.
Japanese translation by Yuichiro Ishii, Hiroshi Ichiji, Hiroshi Koide, Eiko Takaoka, Kumiko Tanaka, and Takahiro Nagao, supervised by Makoto Arisawa and Eiiti Wada (Tokyo: ASCII Corporation, 2006), xvi+741pp.
Republished (softcover) by ASCII DWANGO in 2015.
Korean translation by Ryu Gwang, 컴퓨터 프로그래밍의 예술 3: 정렬 과 검색 (Seoul: Hanbit Media, 2007), 941pp.
Macedonian translation (Skopje: Prosvetno Delo), in preparation.
[A Czech translation is scheduled to be published by Albatros Media A.S.]

### Volume 4A

Combinatorial Algorithms, Part 1 (Upper Saddle River, New Jersey: Addison-Wesley, 2011), xvi+883pp.
ISBN 0-201-03804-8

(Preliminary drafts were previously published as paperback fascicles; see below.)

Russian translation (Moscow: Vil'iams), in preparation.
Chinese translation (Hong Kong: Pearson Education Asia), in preparation.
Japanese translation by Kazuhiko Kakehi and Hiroshi Koide, supervised by Makoto Arisawa and Eiiti Wada (Tokyo: ASCII DWANGO, 2017), xvi+866pp.
Korean translation by Ryu Gwang, 컴퓨터 프로그래밍의 예술 4A: 조합적 알고리즘 1부 (Seoul: Hanbit Media, 2013), 1184pp.

### The Remainder of Volume 4

Present plans are for Volume 4A to be the first in a series of several subvolumes 4A, 4B, 4C, ... entitled Combinatorial Algorithms, Part 1, 2, 3, .... The remaining subvolumes, currently in preparation, will have the following general outline:

• 7.2.2. Backtrack programming
• 7.2.2.2. Satisfiability
• 7.2.2.3. Constraint satisfaction
• 7.2.2.4. Hamiltonian paths
• 7.2.2.5. Cliques
• 7.2.2.6. Covers
• 7.2.2.7. Squares
• 7.2.2.8. A potpourri of puzzles
• 7.2.2.9. Estimating backtrack costs
• 7.2.3. Generating inequivalent patterns
• 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
• 7.7. Discrete dynamic programming
• 7.8. Branch-and-bound techniques
• 7.9. Herculean tasks (aka NP-hard problems)
• 7.10. Near-optimization
• 8. Recursion

### Paperback Fascicles

New material for Volume 4 will first appear in beta-test form as fascicles of approximately 128 pages each, issued approximately twice per year. These fascicles will represent my best attempt to write a comprehensive account; but computer science has grown to the point where I cannot hope to be an authority on all the material covered in these books. Therefore I'll need feedback from readers in order to prepare the official volumes later.

For example, the following fascicles appeared before the hardcover edition of Volume 4A was complete.

Volume 4 Fascicle 0, Introduction to Combinatorial Algorithms and Boolean Functions (2008), xii+216pp. ISBN 0-321-53496-4
Volume 4 Fascicle 1, Bitwise Tricks & Techniques; Binary Decision Diagrams (2009), xiii+261pp. ISBN 0-321-58050-8
Volume 4 Fascicle 2, Generating All Tuples and Permutations (2005), v+128pp. ISBN 0-201-85393-0
Volume 4 Fascicle 3, Generating All Combinations and Partitions (2005), vi+150pp. ISBN 0-201-85394-9
Volume 4 Fascicle 4, Generating All Trees; History of Combinatorial Generation (2006), vi+120pp. ISBN 0-321-33570-8

Translations of those fascicles:
Japanese translation of Volume 4 Fascicle 0 by Eiiti Wada (Tokyo: ASCII Media Works, 2009), xii+206pp.
Chinese translation of Volume 4 Fascicle 0, under the direction of Lin Peng Huang (Beijing: Chinese Machine Press, 2010), xii+432pp.
Hungarian translation of Volume 4 Fascicle 0, under the direction of Antal Iványi: Bevezetés a kombinatorikai algoritmusokhoz és a Boole-függvényekhez (Budapest: AnTonCom Infokommunikációs Kft., 2009), in preparation.
Macedonian translation of Volume 4 Fascicle 0 (Skopje: Prosvetno Delo), in preparation.
Hungarian translation of Volume 4 Fascicle 1, under the direction of Antal Iványi: Bitenkénti trükkök és módszerek; Bináris döntési diagramok (Budapest: AnTonCom Infokommunikációs Kft., 2009), in preparation.
Japanese translation of Volume 4 Fascicle 1 by Eiiti Wada (Tokyo: ASCII Media Works, 2011), x+256pp.
Romanian translation of Volume 4 Fascicle 2, by Cora Radulian: Generarea tuturor tuplurilor și permutărilor (Bucharest: Editura Teora, 2005), vii+144pp.
Japanese translation of Volume 4 Fascicle 2 by Hiroshi Koide, supervised by Makoto Arisawa and Eiiti Wada (Tokyo: ASCII Corporation, 2006), viii+129pp.
Russian translation of Volume 4 Fascicle 2, by Yu. G. Gordienko: Generatsiia vsekh kortezheĭ i perestanovok (Moscow: Vil'iams, 2007), 146pp.
Polish translation of Volume 4 Fascicle 2, by Adam Malinowski: Generowanie wszystkich krotek i permutacji (Warsaw: Wydawnictwa Naukowo-Techniczne, 2007), xiv+137pp.
Hungarian translation of Volume 4 Fascicle 2, under the direction of Antal Iványi: Permutációk és n-esek előállítása (Budapest: AnTonCom Infokommunikációs Kft., 2008), 160pp.
Russian translation of Volume 4 Fascicle 3, by I. V. Krasikov: Generatsiia vsekh sochetaniĭ i razbieniĭ (Moscow: Vil'iams, 2007), 200pp.
Japanese translation of Volume 4 Fascicle 3 by Kazuhiko Kakehi, supervised by Makoto Arisawa and Eiiti Wada (Tokyo: ASCII Corporation, 2008), viii+154pp.
Hungarian translation of Volume 4 Fascicle 3, under the direction of Antal Iványi: Kombinációk és partíciók előállítása (Budapest: AnTonCom Infokommunikációs Kft., 2008), 176pp.
Russian translation of Volume 4 Fascicle 4, by I. V. Krasikov: Generatsiia vsekh derev'ev. Istoriia kombinatornĭ generatsiĭ (Moscow: Vil'iams, 2007), 156pp.
Hungarian translation of Volume 4 Fascicle 4, under the direction of Antal Iványi: Fák előállítása; Kombinatorikus előállítások története (Budapest: AnTonCom Infokommunikációs Kft., 2008), 160pp.
Japanese translation of Volume 4 Fascicle 4 by Kazuhiko Kakehi and Hiroshi Koide, supervised by Makoto Arisawa and Eiiti Wada (Tokyo: ASCII Corporation, 2010), viii+118pp.

One fascicle for Volume 4B, representing that volume's “middle third,” is now in print:

Volume 4 Fascicle 6, Satisfiability (2015), xiii+310pp. ISBN 978-0-13-439760-3

Some "pre-fascicles" are also available for alpha-testing: Pre-Fascicle 5a (Mathematical Preliminaries Redux)Pre-Fascicle 5b (Introduction to Backtracking). I've put them online primarily so that experts in the field can check the contents before I inflict them on a wider audience. But if you want to help debug them, please go right ahead.

### Volume 5

Syntactic Algorithms, in preparation.

• 9. Lexical scanning (includes also string search and data compression)
• 10. Parsing techniques

Estimated to be ready in 2025.

### Future plans

As I continue to write Volumes 4 and 5, I'll need to refer to topics that belong logically in Volumes 1--3 but weren't invented yet when I wrote those books. Instead of putting such material artificially into Volumes 4 or 5, I'll put it into fascicle form. The first such fascicle is in fact ready now (see above): It describes MMIX, a RISC machine that is used in Volume 4A; MMIX will also take the place of MIX in all subsequent editions of Volumes 1, 2, and 3.

Download the 16 Feb 2004 version of Volume 1 Fascicle 1 (583KB of compressed PostScript) (this old version is however no longer being maintained; see the errata below)

After Volume 5 has been completed, I will revise Volumes 1--3 again to bring them up to date. In particular, the new material for those volumes that has been issued in beta-test fascicles will be incorporated at that time.

Then I will publish a reader's digest'' edition of Volumes 1--5, condensing the most important material into a single book.

And after Volumes 1--5 are done, God willing, I plan to publish Volume 6 (the theory of context-free languages) and Volume 7 (Compiler techniques), but only if the things I want to say about those topics are still relevant and still haven't been said. Volumes 1--5 represent the central core of computer programming for sequential machines; the subjects of Volumes 6 and 7 are important but more specialized.

Volumes 1--4A are available from the publisher, Addison-Wesley Publishing Company.

## MIXware

The MIX computer will soon be replaced by a RISC machine called MMIX. Meanwhile if you want to try out the existing programs for the original 60s-era machine, you might be able to find suitable software at the following sites:

(Please let me know of any other sites that I should add to this list.)

## The MMIX Supplement

Martin Ruckert has written an excellent 200-page companion to Volumes 1, 2, and 3, intelligently translating all of the MIX programs into MMIX form. This booklet is jam-packed with instructive details and opportunities for self-instruction.

## Errata et Addenda for Volume 1

The main changes between the second and third editions of Volume 1 are listed in the Errata for Volume 1 (2nd ed.) (335K bytes of compressed PostScript, 80pp)---an archival file that is not being kept up to date. But thousands of additional refinements appear in the 3rd edition; you really should ask someone to get it for you next Christmas.

The main changes to the third edition of Volume 1, made before the appearance of Volume 4A, are listed in the Early errata for Volume 1 (3rd ed.) (258K bytes of compressed PostScript, 50pp), dated 08 January 2011.

There's also a (much shorter) list of changes since the 27th printing, last updated 11 July 2018:

Note: You can't run that TeX file through TeX; it imports all kinds of other files that are private. But if you have no way to look at compressed PostScript files, you might try reading the TeX code as a last resort; at least you'll be able to figure out the page numbers on which corrections have been made.

And there's also a list of changes to Volume 1 Fascicle 1, last updated 30 December 2017:

Note: An unknown number of badly printed copies of Volume 1 Fascicle 1 were printed by mistake. Among other defects, the copyright page has incredibly poor resolution, and the MMIX summary chart has been omitted from the inside back cover. If you have purchased one of these monstrosities, the publishers assure me that they will replace your copy with a good one.

## Errata et Addenda for Volume 2

The main changes between the second and third editions of Volume 2 are listed in the Errata for Volume 2 (2nd ed.) (555K bytes of compressed PostScript, 142pp)---an archival file that is not being kept up to date. But thousands of additional refinements appear in the 3rd edition; you really should ask someone to get it for you next Christmas.

The main changes to the third edition of Volume 2, made before the appearance of Volume 4A, are listed in the Early errata for Volume 2 (3rd ed.) (232K bytes of compressed PostScript, 50pp), dated 08 January 2011.

There's also a (much shorter) list of changes since the 26th printing, last updated 11 July 2018:

Note: You can't run that TeX file through TeX; it imports all kinds of other files that are private. But if you have no way to look at compressed PostScript files, you might try reading the TeX code as a last resort; at least you'll be able to figure out the page numbers on which corrections have been made.

## Errata et Addenda for Volume 3

The main changes between the first and second editions of Volume 3 are listed in the Errata for Volume 3 (1st ed.) (430K bytes of compressed PostScript, 109pp)---an archival file that is not being kept up to date. But thousands of additional refinements appear in the 2nd edition; you really should ask someone to get it for you next Christmas.

The main changes to the second edition of Volume 3, made before the appearance of Volume 4A, are listed in the Early errata for Volume 3 (2nd ed.) (257K bytes of compressed PostScript, 43pp), dated 08 January 2011.

There's also a (much shorter) list of changes since the 27th printing, last updated 11 July 2018:

Note: You can't run that TeX file through TeX; it imports all kinds of other files that are private. But if you have no way to look at compressed PostScript files, you might try reading the TeX code as a last resort; at least you'll be able to figure out the page numbers on which corrections have been made.

## Errata et Addenda for Volume 4A

The following corrections to the paperback fascicles that preceded Volume 4A will make them essentially consistent with the first hardcover printing of that volume. (These errata files reached their final form on 01 January 2011, and they won't be updated again; see below for additional amendments and corrections to the hardcover printing.)

Here's the current list of changes to the hardcover edition, last updated 11 July 2018:

Note: You can't run that TeX file through TeX; it imports all kinds of other files that are private. But if you have no way to look at compressed PostScript files, you might try reading the TeX code as a last resort; at least you'll be able to figure out the page numbers on which corrections have been made.

And there's also a list of changes to Volume 4 Fascicle 6, last updated 11 July 2018:

## Rewards

The first finder of any error in my books receives 0x$1.00 ($2.56), deposited to their account at the Bank of San Serriffe; significant suggestions are also worth 0x$0.20 ($0.32) each. If you are really a careful reader, you may be able to recoup more than the cost of the books this way.

However, people who have read the book Eats, Shoots & Leaves should not expect a reward for criticizing the ways in which I use commas. Punctuation is extremely important to me, but I insist on doing it my own way.

As mentioned above, I take no responsibility for errors in the eBook editions that do not use PDF format. I would soon go broke if I had to pay for all of them! Such errors should be reported directly to the publisher, not to me, and you should request a replacement copy.

Donald E. Knuth
Computer Science Department
Gates Building 4B
Stanford University
Stanford, CA 94305-9045 USA.

In either case please include your postal address, so that I can mail an official certificate of deposit as a token of thanks for any improvements to which you have contributed.

SPECIAL NOTE TO THE SPEAKERS OF FRENCH AND OTHER EXOTIC LANGUAGES: Numerous quotations and bibliographic citations found in these books have been copied verbatim from the original sources. If you believe you have found a typographic error, you must prove it by showing that the original was incorrectly transcribed; believe it or not, your language has changed over the years, just as English has.

Although I'm working full time on Volume 4B these days, I will try to reply to all such messages within six months of receipt.

BUT PLEASE DO NOT SEND EMAIL TO TAOCP EXCEPT TO REPORT ERRORS IN THE ART OF COMPUTER PROGRAMMING. And if you do report an error via email, please do not include attachments of any kind; your message should be readable on brand-X operating systems for all values of X. (Encrypted messages that I get from "gmail.com" are also gibberish and unreadable without great pain.) Send PLAIN ASCII TEXT ONLY.

• 4
点赞
• 11
收藏
• 打赏
• 0
评论
01-23 124
10-17 1546
05-09 1583
03-10 2296
02-24 4100
01-04 696
05-30 1944
05-30 2834

### “相关推荐”对你有帮助么？

• 非常没帮助
• 没帮助
• 一般
• 有帮助
• 非常有帮助

rtoax

¥2 ¥4 ¥6 ¥10 ¥20

1.余额是钱包充值的虚拟货币，按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载，可以购买VIP、C币套餐、付费专栏及课程。