Programming Books C Java PHP Python Learn more Browse Programming Books
Art of Computer Programming, Volume 1: Fundamental Algori... and over one million other books are available for Amazon Kindle. Learn more
  • List Price: $79.99
  • Save: $54.49 (68%)
Rented from apex_media
To Rent, select Shipping State from options above
Due Date: Aug 15, 2014
FREE return shipping at the end of the semester. Access codes and supplements are not guaranteed with rentals.
Used: Good | Details
Sold by apex_media
Condition: Used: Good
Comment: Ships direct from Amazon! Qualifies for Prime Shipping and FREE standard shipping for orders over $25. Overnight and 2 day shipping available!
Add to Cart
Qty:1
  • List Price: $79.99
  • Save: $25.12 (31%)
In Stock.
Ships from and sold by Amazon.com.
Gift-wrap available.
Add to Cart
Want it Monday, April 21? Order within and choose Two-Day Shipping at checkout. Details
Trade in your item
Get a $9.41
Gift Card.
Have one to sell?
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more

Art of Computer Programming, Volume 1: Fundamental Algorithms (3rd Edition) Hardcover

ISBN-13: 078-5342896831 ISBN-10: 0201896834 Edition: 3rd

See all 2 formats and editions Hide other formats and editions
Amazon Price New from Used from Collectible from
Kindle
"Please retry"
Hardcover
"Please retry"
$54.87
$49.99 $31.66

Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student



Frequently Bought Together

Art of Computer Programming, Volume 1: Fundamental Algorithms (3rd Edition) + Art of Computer Programming, Volume 2: Seminumerical Algorithms (3rd Edition) + Art of Computer Programming, Volume 3: Sorting and Searching (2nd Edition)
Price for all three: $164.63

Buy the selected items together

NO_CONTENT_IN_FEATURE

Books for Pragmatic Programmers
Find resources for various programming needs, including agile teams, programming languages, and the life of a programmer, in the Pragmatic Bookshelf.

Product Details

  • Hardcover: 672 pages
  • Publisher: Addison-Wesley Professional; 3 edition (July 17, 1997)
  • Language: English
  • ISBN-10: 0201896834
  • ISBN-13: 978-0201896831
  • Product Dimensions: 9.6 x 6.7 x 1.4 inches
  • Shipping Weight: 2.5 pounds (View shipping rates and policies)
  • Average Customer Review: 4.4 out of 5 stars  See all reviews (51 customer reviews)
  • Amazon Best Sellers Rank: #69,969 in Books (See Top 100 in Books)

Editorial Reviews

Amazon.com Review

This magnificent tour de force presents a comprehensive overview of a wide variety of algorithms and the analysis of them. Now in its third edition, The Art of Computer Programming, Volume I: Fundamental Algorithms contains substantial revisions by the author and includes numerous new exercises.

Although this book was conceived several decades ago, it is still a timeless classic. One of the book's greatest strengths is the wonderful collection of problems that accompany each chapter. The author has chosen problems carefully and indexed them according to difficulty. Solving a substantial number of these problems will help you gain a solid understanding of the issues surrounding the given topic. Furthermore, the exercises feature a variety of classic problems.

Fundamental Algorithms begins with mathematical preliminaries. The first section offers a good grounding in a variety of useful mathematical tools: proof techniques, combinatorics, and elementary number theory. Knuth then details the MIX processor, a virtual machine architecture that serves as the programming target for subsequent discussions. This wonderful section comprehensively covers the principles of simple machine architecture, beginning with a register-level discussion of the instruction set. A later discussion of a simulator for this machine includes an excellent description of the principles underlying the implementation of subroutines and co-routines. Implementing such a simulator is an excellent introduction to computer design.

In the second section, Knuth covers data structures--stacks, queues, lists, arrays, and trees--and presents implementations (in MIX assembly) along with techniques for manipulating these structures. Knuth follows many of the algorithms with careful time and space analysis. In the section on tree structures, the discussion includes a series of interesting problems concerning the combinatorics of trees (counting distinct trees of a particular form, for example) and some particularly interesting applications. Also featured is a discussion of Huffmann encoding and, in the section on lists, an excellent introduction to garbage collection algorithms and the difficult challenges associated with such a task. The book closes with a discussion of dynamic allocation algorithms.

The clear writing in Fundamental Algorithms is enhanced by Knuth's dry humor and the historical discussions that accompany the technical matter. Overall, this text is one of the great classics of computer programming literature--it's not an easy book to grasp, but one that any true programmer will study with pleasure.

From the Back Cover

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.



Customer Reviews

If I want, I can have fun with this book for the rest of my life.
Vincent Poirier
This is Knuth's life work, and an attempt to really contribute to capital C Computer capital S Science.
Lance Murdoch
I read this book when I was a sophomore in high school and I thought it was excellent.
Noah Stein (NDStein@aol.com)

Most Helpful Customer Reviews

47 of 48 people found the following review helpful By A Customer on January 1, 1999
Format: Hardcover
When I read Knuth #1, I was an English Major with a certificate in COBOL programming. Alot of what he said made no sense; after struggling for 3 weeks I began to understand. I used Knuth to learn QA, testing techniques, structured analysis; Knuth was my Harvard & Yale of programming knowledge.
I read the poor reviews of Knuth here & I think: THEY must be lazy, really lazy. If you want to work hard & have NO Background in CS other than a programming language you really know YOU can master this book. Yeah the math & true CS graduate can read this easier than me, but can they owe a lifetime of programming methodology to it?
I owe everything to Knuth; I love the man.
2 Comments Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
46 of 47 people found the following review helpful By khays@sequent.com (Kirk Hays) on November 10, 1997
Format: Hardcover
Anyone who aspires to be a transcendent programmer must own (and use) Knuth. I've used my 20 year old TAOCP vol. 1 so many times over the years that it lays flat at any page.
The updated volume 1 is more of the same - a classic revisited, revamped, restored. It is odd to handle something so familiar, yet so crisp.
Those who dislike MIX will be unimpressed - to them, I say that you don't learn by doing the same vanilla thing time and again, but rather by wrestling with unfamiliar concepts and architectures. Many times my fellow programmers will find themselves roadblocked in an unfamiliar situation, while I often can see the unobvious solution - I attribute this ability to a wide experience with unconventional solutions, including extensive study of Knuth's TAOCP.
If you're serious about your programming abilities, you *must* own (and study) this book! Frankly, if computer science were taught as an apprenticeship, this would be the journeyman's manual. I've required the many programmers I've trained over the years to own and study TAOCP, and they've all come to appreciate it's layered approach to problems - you can read Knuth at many levels, from algorithm reference to meta-analysis of an entire class of problems.
If there is a Koran, Bible, or Tao of Computer Science, this is it. The only thing close is Aho's "Dragon Book," and it's specific to compilers.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
33 of 34 people found the following review helpful By Noah Stein (NDStein@aol.com) on August 15, 1999
Format: Hardcover
I read this book when I was a sophomore in high school and I thought it was excellent. Prior to reading the book, I had wanted for a long time to write a program to evaluate standard mathematical expressions. I had even tried once before, but I didn't know enough about what I was doing to be really successful. Somewhere in the second chapter in a discussion of lists, doubly-linked-lists, and binary trees, a good solution came to me, and I implemented it right after I finished reading the book. It worked very well. This book helped me to accomplish the major goal-project of my computer programming career so far, and I definately think it is worth reading for anyone wanting a really advanced understanding of fundamental algorithms. Now I know to many advanced means total [over]use of fully encapsulated C++ objects, which this book doesn't have, but this book gives an advanced understanding, which is infinitely more valuable than classes. If you understand OOP and you understand this book, you should be able to combine the two just fine. Lastly, I'd like to comment on the use of MIX. I read almost none of the MIX assembly code when I read this book. The little I looked at I looked at because I wanted to see what assembly was like in the 60's. But you can understand everything he's trying to say by his explanations of the algorithms, the assembly code is only for clarification, and you don't have to read it. I also believe that everyone who's been using fully encapsulated classes for their entire programming career should learn an assembly language sometime. Just like this book, it will teach you how to think.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
20 of 20 people found the following review helpful By A Customer on November 29, 1997
Format: Hardcover
Knuth has finally updated the three completed volumes ofhis exceptional "The Art of Computer Programming" series,correcting errors and updating the topics to includestate-of-the-art algorithms while retaining the basicstrengths and weaknesses of the books. This comes as arelief to many old-time programmers who, watching Knuth's20-year diversion in pursuit of typographic perfection, hadbecome convinced he was NEVER going to get around tocompleting the remaining four volumes of the series.
The series's strength is its exhaustive survey and deepscientific analysis of the many algorithms applicable tothe areas of computer science covered. No other book orseries comes close in providing the reader with the toolsto understand and develop algorithms and to choose amongthe alternatives available when faced with a programmingchallenge requiring an algorithmic solution.
Knuth's primary weapon for analysis is mathematics and hedoesn't hesitate in beating algorithms to death with abarrage of equations; in fact, on a few pages a reader canfind up to thirty summation signs. So a warning is inorder: readers with math anxiety are likely to be reducedto a state of insensate palpitation. Yet the books containvery little calculus or other higher mathematics and thus acollege sophomore should be able to follow the discussion.Also, the reader can skip all the proofs on first readingand simply trust that Knuth is telling the truth.
Surprisingly, the series contains much background materialon the history of computer science and quite a bit of wryhumor. It is about as lively as can be expected of a seriesso deeply technical.
The series's greatest weakness is the MIX assemblylanguage, which Knuth uses to illustrate algorithms, almostalways after first describing them in English.
Read more ›
1 Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Product Images from Customers

Most Recent Customer Reviews

Search
ARRAY(0xa529a3c0)