| help | account  


Art of Computer Programming Volume 1: Fundamental Algorithms, 3rd Edition
View Larger Image
Donald E. Knuth
Addison-Wesley, Hardcover, 3rd edition, Published July 1997, 650 pages, ISBN 0201896834
List Price: $69.99
Our Price: $54.50
You Save: $15.49 (22% Off)


FREE Shipping on Orders over $40!*
Availability: Out-Of-Stock

Be the First to Write a Review and tell the world about this title!

People who purchase this book frequently purchase:

Books on similar topics, in best-seller order:Books from the same publisher, in best-seller order:

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.

A word from Donald Knuth:

For the past 20 years I've been making copious notes in my personal copies of The Art of Computer Programming, whenever I've noticed how those books could be made better. Finally the time is ripe to typeset those books from scratch, using the tools of digital typography that I worked on during the 1980s. The new editions incorporate literally thousands of improvements, including hundreds of instructive new exercises and answers to exercises. I think most readers will enjoy these new things as much as I did when I first learned them. I've been especially careful to include any new historical details that have come to my attention, and to provide up-to-date information about all the research problems stated in previous editions. Computer Science has been changing and growing at a fantastic rate, yet I believe nearly everything in The Art of Computer Programming is crucial information that will never become obsolete.

Table of Contents

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.

About the Author

Donald E. Knuth was born on January 10, 1938 in Milwaukee, Wisconsin. He studied mathematics as an undergraduate at Case Institute of Technology, where he also wrote software at the Computing Center. The Case faculty took the unprecedented step of awarding him a Master's degree together with the B.S. he received in 1960. After graduate studies at California Institute of Technology, he received a Ph.D. in Mathematics in 1963 and then remained on the mathematics faculty. Throughout this period he continued to be involved with software development, serving as consultant to Burroughs Corporation from 1960-1968 and as editor of Programming Languages for ACM publications from 1964-1967.

He joined Stanford University as Professor of Computer Science in 1968, and was appointed to Stanford's first endowed chair in computer science nine years later. As a university professor he introduced a variety of new courses into the curriculum, notably Data Structures and Concrete Mathematics. In 1993 he became Professor Emeritus of The Art of Computer Programming. He has supervised the dissertations of 28 students.

Knuth began in 1962 to prepare textbooks about programming techniques, and this work evolved into a projected seven-volume series entitled The Art of Computer Programming. Volumes 1-3 first appeared in 1968, 1969, and 1973. Having revised these three in 1997, he is now working full time on the remaining volumes. Approximately one million copies have already been printed, including translations into six languages. He took ten years off from this project to work on digital typography, developing the TeX system for document preparation and the METAFONT system for alphabet design. Noteworthy by-products of those activities were the WEB and CWEB languages for structured documentation, and the accompanying methodology of Literate Programming. TeX is now used to produce most of the world's scientific literature in physics and mathematics.

His research papers have been instrumental in establishing several subareas of computer science and software engineering: LR(k) parsing; attribute grammars; the Knuth-Bendix algorithm for axiomatic reasoning; empirical studies of user programs and profiles; analysis of algorithms. In general, his works have been directed towards the search for a proper balance between theory and practice.

Professor Knuth received the ACM Turing Award in 1974 and became a Fellow of the British Computer Society in 1980, an Honorary Member of the IEEE in 1982. He is a member of the American Academy of Arts and Sciences, the National Academy of Sciences, the National Academy of Engineering, and a foreign associate of l'Academie des Sciences (Paris) and Det Norske Videnskaps-Akademi (Oslo). He holds five patents and has published approximately 160 papers in addition to his 19 books. He received the Medal of Science from President Carter in 1979, the American Mathematical Society's Steele Prize for expository writing in 1986, the New York Academy of Sciences Award in 1987, the J.D. Warnier Prize for software methodology in 1989, the Adelsk&oumlld Medal from the Swedish Academy of Sciences in 1994, the Harvey Prize from the Technion in 1995, and the Kyoto Prize for advanced technology in 1996. He was a charter recipient of the IEEE Computer Pioneer Award in 1982, after having received the IEEE Computer Society's W. Wallace McDowell Award in 1980; he received the IEEE's John von Neumann Medal in 1995. He holds honorary doctorates from Oxford University, the University of Paris, St. Petersburg University, and more than a dozen colleges and universities in America.

Professor Knuth lives on the Stanford campus with his wife, Jill. They have two children, John and Jennifer. Music is his main avocation.




Forgot your password?
FAQs
Shipping Options
Returns
Your Orders
Your Account