|
| Login | Sign up | My Wish List |
![]() | Art of Computer Programming, Volume 3: Sorting and Searching (2nd Edition) (Art of Computer Programming Volume 3) by Donald E. Knuth ISBN-10: 0201896850 ISBN-10: 0-201-89685-0 ISBN-13: 9780201896855 ISBN-13: 978-0-201-89685-5 Hardcover 1998-05-04 Addison-Wesley Professional Find Lowest Price | |
Editorials | ||
Book Description The first revision of this third volume is the most comprehensive survey of classical computer techniques for sorting and searching. It extends the treatment of data structures in Volume 1 to consider both large and small databases and internal and external memories. The book contains a selection of carefully checked computer methods, with a quantitative analysis of their efficiency. Outstanding features of the second edition include a revised section on optimum sorting and new discussions of the theory of permutations and of universal hashing. | ||
Reviews | ||
What's old is new again First the basics: it's great, it provides wide-ranging and deep analysis, it shows many views and variants of each problem, and its bibliography is helpful, though not exhaustive. The historical notes, including sorts for drum storage, may seem quaint to modern readers. And sorting has been done, right? You just run a shell program or call a function, and tap into the best technology. Does it need to be done again? Yes, if you're on the edge of technology, it does need to be done again, and again, and again. That's because technology keeps expanding, and violating old assumptions as it does. Memories got big enough that the million-record sort is now a yawn, where it used to be a journal article. But, at the same time, processor clocks got 100-1000x ahead of memory speeds. All of a sudden, those drum-based algorithms are worth another look, because yesteryear's drum:memory ratios are a lot like today's memory:cache ratios of size and speed - and who doesn't want a 100x speedup? Parallel processing is moving from the supercomputing elite into laptops, causing more tremors in the ground rules. GPU and reconfigurable computing also open whole new realms of pitfalls as well as opportunities. Knuth points out that the analyses have beauty in themselves, for people with eyes to see it. His analyses also demonstrate techniques applicable way beyond the immediate discussion, too. Today, though, I have nasty problems in technologies that no one really knows how to handle very well. I have to go back and check all the assumptions again, since so many of them changed. If that's the kind of problem you have, too, then this is the place to start. //wiredweird | ||
Excellent but needs improvement Excellent reference. However, I didn't like the idea of using MIX assembly language. Book would have been more readable if examples were in plain english pseudocode (even better would be 'C'). At least second edition should have taken care of this aspect. I also suggest books from Cormen & Sedgewick on same subject. | ||
Just try sorting and searching with out this book. I just bought the book I needed out of the set. I needed to build a database that did not use any commercial package (this gives full access and no royalties). This book saved my bacon. I almost did not buy it when all I saw in it was math. But I was desperate and it paid off. Turns out you could not explain it any other way. This book goes way beyond binary, and bubble sorts. I use it primarily for balanced trees. I may try some thing more exotic later. I can not tell you about the other volumes but this one will defiantly pay for it's self. | ||
The Encyclopedia of Algorithms A previous review said: "This is a book about the science of algorithms. Algorithm's are either right or wrong." Knuth uses the MIX programming language thoughout, and if you hope to learn programming by reading this book, you should look elsewhere. Someday we'll have 2^30 registers, and we will still be trying to make our programs work faster on this, as yet, uninvented architecture. But the fundamental concepts will remain the same, and people will still be reading Knuth to understand them. A good reference for serious computer science students. Others should look at O'Reilly. They have some really good books on visual basic. This is an encyclopedia of what is known about sorting and searching and what computers can do. It is nothing else. Graduate students in computer science (especially those in theory, algorithms and the occasional compiler fan) will benefit. Hackers will probably not benefit from this book. | ||
Legendary book This book is bible of computer programming. It contains most detailed explanation of searching and sorting methods I ever found in a book. Contains all internal sorting and searching and external sorting and searching algorithms. The only drawback of the book is that all algorithms are written in MIX - some kind of assembler, and because of that they are hard to read. | ||