The art of computer programming. Vol.1, fundamental algorithms /
Donald Ervin Knuth.
- 3rd.
- Massachusetts : Addison-Wesley, 1997
- 650 p.
CONTENIDO Chapter 1. Basic Concepts 1 Algorithms 1 Mathematical Preliminaries 10 Mathematical Induction 11 Numbers, Powers, and Logarithms 21 Sums and Products 27 Integer Functions and Elementary Number Theory 39 Permutations and Factorials 45 Binomial Coefficients 52 Harmonic Numbers 75 Fibonacci Numbers 79 Generating Functions 87 Analysis of an Algorithm 96 Asymptotic Representations 107 The O-notation 107 Euler's summation formula 111 Some asymptotic calculations 116 MIX 124 Description of MIX 124 The MIX Assembly Language 144 Applications to Permutations 164 Some Fundamental Programming Techniques 186 Subroutines 186 Coroutines 193 Interpretive Routines 200 A MIX simulator 202 Trace routines 212 Input and Output 215 History and Bibliography 229 Chapter 2. Information Structures 232 Introduction 232 Linear Lists 238 Stacks, Queues, and Deques 238 Sequential Allocation 244 Linked Allocation 254 Circular Lists 273 Doubly Linked Lists 280 Arrays and Orthogonal Lists 298 Trees 308 Traversing Binary Trees 318 Binary Tree Representation of Trees 334 Other Representations of Trees 348 Basic Mathematical Properties of Trees 362 Free trees 363 Oriented trees 372 The infinity lemma 382 Enumeration of trees 386 Path length 399 History and bibliography 406 Lists and Garbage Collection 408 Multilinked Structures 424 Dynamic Storage Allocation 435 History and Bibliography 457 Answers to Exercises 466 Appendix A. Tables of Numerical Quantities 619 Fundamental Constants (decimal) 619 Fundamental Constants (octal) 620 Harmonic Numbers, Bernoulli Numbers, Fibonacci Numbers 621 Appendix B. Index to Notations 623 Index and Glossary 628