1 option
The art of computer programming. Volume 4, Fascicle 1 / Donald E. Knuth.
- Format:
- Book
- Author/Creator:
- Knuth, Donald Ervin, 1938-
- Language:
- English
- Subjects (All):
- Computer programming.
- Computer algorithms.
- Physical Description:
- 1 online resource (vii, 243 p. ) ill.
- Edition:
- 1st edition
- Other Title:
- Bitwise tricks and techniques; binary decision diagrams
- Place of Publication:
- Boston, Mass. ; London : Addison-Wesley, 2009.
- System Details:
- text file
- Summary:
- This multivolume work on the analysis of algorithms has long been recognized as the definitive description of classical computer science. The three complete volumes published to date already comprise a unique and invaluable resource in programming theory and practice. Countless readers have spoken about the profound personal influence of Knuth’s writings. Scientists have marveled at the beauty and elegance of his analysis, while practicing programmers have successfully applied his “cookbook” solutions to their day-to-day problems. All have admired Knuth for the breadth, clarity, accuracy, and good humor found in his books. To begin the fourth and later volumes of the set, and to update parts of the existing three, Knuth has created a series of small books called fascicles, which will be published at regular intervals. Each fascicle will encompass a section or more of wholly new or revised material. Ultimately, the content of these fascicles will be rolled up into the comprehensive, final versions of each volume, and the enormous undertaking that began in 1962 will be complete. Volume 4, Fascicle 1 This fascicle, enlivened by a wealth of Knuth’s typically enjoyable examples, describes basic “broadword” operations and an important class of data structures that can make computer programs run dozens–even thousands–of times faster. The author brings together and explains a substantial amount of previously scattered but eminently practical information known only to a few specialists. The book also includes nearly five-hundred exercises for self-study, with detailed answers given in nearly every case; dozens of these exercises present original material that has never before been published. Simply put, this fascicle is a must-have for anybody who is faced with tough problems of a combinatorial flavor. It demonstrates how ordinary programmers can make use of powerful techniques that heretofore seemed to be available only to people who used specialized languages and software. It shows how ideas once thought to be “far out” are now ready to become a part of the programming mainstream.
- Contents:
- Intro
- About This eBook
- Title Page
- Copyright Page
- Preface
- Notes on the Exercises
- Contents
- Chapter Seven: Combinatorial Searching
- 7.1. Zeros and Ones
- 7.1.1. Boolean Basics
- 7.1.2. Boolean Evaluation
- 7.1.3. Bitwise Tricks and Techniques
- 7.1.4. Binary Decision Diagrams
- 7.2. Generating All Possibilities
- 7.2.1. Generating Basic Combinatorial Patterns
- 7.2.1.1. Generating all n-tuples
- 7.2.1.2. Generating all permutations
- 7.2.1.3. Generating all combinations
- 7.2.1.4. Generating all partitions
- 7.2.1.5. Generating all set partitions
- 7.2.1.6. Generating all trees
- 7.2.1.7. History and further references
- Answers to Exercises
- Notes on The Exercises
- Section 7
- Section 7.1.1
- Section 7.1.2
- Section 7.1.3
- Section 7.1.4
- Section 7.2.1.1
- Section 7.2.1.2
- Section 7.2.1.3
- Section 7.2.1.4
- Section 7.2.1.5
- Section 7.2.1.6
- Section 7.2.1.7
- Appendix A. Tables of Numerical Quantities
- 1. Fundamental Constants (decimal)
- 2. Fundamental Constants (hexadecimal)
- 3. Harmonic Numbers, Bernoulli Numbers, Fibonacci Numbers
- Appendix B. Index to Notations
- Appendix C. Index to Algorithms and Theorems
- Appendix D. Index to Combinatorial Problems
- Index and Glossary.
- Notes:
- Includes index.
- Description based on publisher supplied metadata and other sources.
- OCLC:
- 354465239
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.