The art of computer programming: fundamental algorithms, volume 1
Knuth, Donald Ervin
The art of computer programming: fundamental algorithms, volume 1 - 3rd ed. - Boston Addison-Wesley 1997 - xix, 652p. hb.
https://www.pearson.com/en-us/subject-catalog/p/art-of-computer-programming-the-volume-1-fundamental-algorithms/P200000000378/9780201896831?tab=title-overview
The 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.
1. Basic Concepts.
Algorithms.
Mathematical Preliminaries.
Mathematical Induction.
Numbers, Powers, and Logarithms.
Sums and Products.
Integer Functions and Elementary Number Theory.
Permutations and Factorials.
Binomial Coefficients.
Harmonic Numbers.
Fibonacci Numbers.
Generating Functions.
Analysis of an Algorithm.
Asymptotic Representations.
MIX.
Description of MIX.
The MIX Assembly Language.
Applications to Permutations.
Some Fundamental Programming Techniques.
Subroutines.
Coroutines.
Interpretive Routines.
Input and Output.
History and Bibliography.
2. Information Structures.
Introduction.
Linear Lists.
Stacks, Queues, and Deques.
Sequential Allocation.
Linked Allocation.
Circular Lists.
Doubly Linked Lists.
Arrays and Orthogonal Lists.
Trees.
Traversing Binary Trees.
Binary Tree Representation of Trees.
Other Representations of Trees.
Basic Mathematical Properties of Trees.
Lists and Garbage Collection.
Multilinked Structures.
Dynamic Storage Allocation.
History and Bibliography.
Answers to Exercises.
Appendix A. Tables of Numerical Quantities.
1. Fundamental Constants (decimal).
2. Fundamental Constants (octal).
3. Harmonic Numbers, Bernoulli Numbers, Fibonacci Numbers.
Appendix B. Index to Notations.
Index and Glossary.
9780201896831
Computer science
Computer Programming
Computer Algorithms
005.1 / KNU
The art of computer programming: fundamental algorithms, volume 1 - 3rd ed. - Boston Addison-Wesley 1997 - xix, 652p. hb.
https://www.pearson.com/en-us/subject-catalog/p/art-of-computer-programming-the-volume-1-fundamental-algorithms/P200000000378/9780201896831?tab=title-overview
The 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.
1. Basic Concepts.
Algorithms.
Mathematical Preliminaries.
Mathematical Induction.
Numbers, Powers, and Logarithms.
Sums and Products.
Integer Functions and Elementary Number Theory.
Permutations and Factorials.
Binomial Coefficients.
Harmonic Numbers.
Fibonacci Numbers.
Generating Functions.
Analysis of an Algorithm.
Asymptotic Representations.
MIX.
Description of MIX.
The MIX Assembly Language.
Applications to Permutations.
Some Fundamental Programming Techniques.
Subroutines.
Coroutines.
Interpretive Routines.
Input and Output.
History and Bibliography.
2. Information Structures.
Introduction.
Linear Lists.
Stacks, Queues, and Deques.
Sequential Allocation.
Linked Allocation.
Circular Lists.
Doubly Linked Lists.
Arrays and Orthogonal Lists.
Trees.
Traversing Binary Trees.
Binary Tree Representation of Trees.
Other Representations of Trees.
Basic Mathematical Properties of Trees.
Lists and Garbage Collection.
Multilinked Structures.
Dynamic Storage Allocation.
History and Bibliography.
Answers to Exercises.
Appendix A. Tables of Numerical Quantities.
1. Fundamental Constants (decimal).
2. Fundamental Constants (octal).
3. Harmonic Numbers, Bernoulli Numbers, Fibonacci Numbers.
Appendix B. Index to Notations.
Index and Glossary.
9780201896831
Computer science
Computer Programming
Computer Algorithms
005.1 / KNU