The Art of Computer Programming: Fundamental algorithms, Volume 1The bible of all fundamental algorithms and the work that taught many of today's software developers most of what they know about computer programming. -Byte, September 1995 I can't begin to tell you how many pleasurable hours of study and recreation they have afforded me! I have pored over them in cars, restaurants, at work, at home... and even at a Little League game when my son wasn't in the line-up. -Charles Long If you think you're a really good programmer... read [Knuth's] Art of Computer Programming... You should definitely send me a resume if you can read the whole thing. -Bill Gates It's always a pleasure when a problem is hard enough that you have to get the Knuths off the shelf. I find that merely opening one has a very useful terrorizing effect on computers. -Jonathan Laventhol This first volume in the series begins with basic programming concepts and techniques, then focuses more particularly on information structures-the representation of information inside a computer, the structural relationships between data elements and how to deal with them efficiently. Elementary applications are given to simulation, numerical methods, symbolic computing, software and system design. Dozens of simple and important algorithms and techniques have been added to those of the previous edition. The section on mathematical preliminaries has been extensively revised to match present trends in research. Ebook (PDF version) produced by Mathematical Sciences Publishers (MSP), http: //msp.org |
Contents
Chapter 1 Basic Concepts | 1 |
Information Structures | 232 |
Answers to Exercises | 466 |
Copyright | |
2 other sections not shown
Other editions - View all
The Art of Computer Programming: Sorting and searching. 3 Donald Ervin Knuth No preview available - 1975 |
The Art of Computer Programming: Fundamental algorithms. Vol. 1 Donald Ervin Knuth No preview available - 2002 |
The Art of Computer Programming: Sorting and searching. Vol. 3 Donald Ervin Knuth No preview available - 2007 |
Common terms and phrases
algorithm allocation assume AVAIL binary tree binomial coefficients block buffer bytes CACM called coefficients column coroutine corresponding cycle defined delete denote directed graph doubly linked lists elements elevator ENT1 ENTA entry equivalent Eulerian circuit example exercise extended binary tree Fibonacci formula free tree function given index register induction INFO input insert instruction integer jump k₁ link fields LLINK Math mathematical matrix memory method MIXAL modulo node nonnegative notation operation oriented tree otherwise set output overflow permutation pointer polynomial positive integers postorder preorder problem proof prove queue real numbers representation RLINK root routine Section sequence Show simulated stack step storage subroutine subtree techniques terminates theorem topological sorting traversal tree structure variable vertex vertices word zero