Sorting and Searching Books
Related Subjects:
More Pages: 1 2 3

Used price: $26.00

Excellent but needs improvementReview Date: 2005-09-03
Legendary bookReview Date: 1999-12-22
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.
Just try sorting and searching with out this book.Review Date: 2004-08-03
The Encyclopedia of AlgorithmsReview Date: 2004-07-11
Knuth uses the MIX programming language throughout, and if you hope to learn programming by reading this book, you should look elsewhere. Maybe someday we'll have 2^32 registers, but we will still be trying to make our programs work faster on this, as yet, uninvented architecture. 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 and script kiddies will probably not benefit from this book.
What's old is new againReview Date: 2006-11-04
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
Used price: $5.00

Excellent Reference for students of Computer ScienceReview Date: 1998-03-08
Used price: $2.30

Somewhat disappointed by sloppy foldingReview Date: 2008-06-02
A fundamental book for the randomness.Review Date: 2008-02-29
This book , written several years ago, is today the best about those facts. I have studied recently the random numbers and I have read the algebric theory of this book . It's interesting as a solutions of algebric equation must verify statistic conditions for effective randomness.
Great boxed setReview Date: 2008-01-12
The Art of Computer ProgrammingReview Date: 2007-12-22
It's not a textbook---it's a reference book!Review Date: 2007-12-22
The reason is that when I prepared my notes, and when I went to class, I held a copy of Knuth in my hand. Full of post-its. It's not the best book for "learners" (i.e., beginners), but it's the ONLY book for the algorithm "pro". Sure, you can teach undergrads out of Sedgewick (Knuth's student by the way). But how do you make sure you're not missing something by using Sedgewick? By reading Knuth of course.
If I knew a bright high school student with an interest in computer programming, I'd get him the box set for Christmas. I have to admit I first ran into Knuth when I was a grade school student in the early 80s. There are lots of books in the library that a kid of say twelve just isn't interested in: whatever they are about is something that is just irrelevant and unknown. Not so with Knuth: I was programming BASIC on my C64 back then and knew what programming was. Knuth was downright scary. Here he is talking about simple things, and .... who would have known there would be so much to say about sorting???
about MIX: One day Knuth will be dead. Any programming language that existed during his lifetime will be dead. TeX will be at version pi(=4 atan 1). The Art of Computer Programming will still be relevant, most of it. This would not be the case if
the examples were coded in any "standard" programming language, with all the special-purpose things they all have (no not even if they were in Ruby on Rails!) With MIX, they will at least be in a programming notation as irrelevant then as it is now.
I have an anecdote... when I was a grad student a fellow grad student of mine had come up with a new cute algorithm using two priority queues to solve some problem in CAD. We did some literature searches.. could this be a new algorithm? Nothing came up. Search the web... nothing came up. Look in the standard books on CAD.. nothing came up. Time to publish?
Then I remembered I had a copy of Knuth (he didn't, as it's not fashionable to have forty-year-old books lying around if you're a CS grad student). Turns out the data structure and algorithm the fellow had come up with were described and analyzed in the answer to one of the exercises in Knuth's vol 3. As I recall it the exercise had difficulty level "30" (on Knuth's scale of 0-50).
I draw the conclusion that "active researchers" in a field that has anything to do with algorithms, who don't use Knuth, are at great risk of attracting ridicule for not having read up.
I re-read this book every now and then. Sometimes I read it in the bathroom. Even though I have read it several times, I always learn something new. Often on every page.

Used price: $34.80

I wish I had this when I was in collegeReview Date: 2007-07-24
One of the factors that I did not see mentioned in other reviews is that Sedgewick's visual representations of the algorithms are phenomenal. In older algorithms textbooks, these have always been represented by small diagrams--if any--that show what happens when an algorithm is used to attack a small problem (say, a linked list with 10 nodes). This text shows a visual representation of those small cases, but then goes the extra mile to show visual representations of the same algorithm when scaled to a variety of massive inputs. These representations are a great tool for comparing the scalability of various algorithmic approaches against one another.
Good documentation of basic data structuresReview Date: 2001-10-27
C++ AlgorithmsReview Date: 2001-10-22
Excellent, Exhaustive (but not rigorous)Review Date: 2001-10-21
fundamental, searching and sorting algorithms, then this is one of
the very best available.
Sedgewick has split his popular book into two volumes, with Graph
algorithms being hifted to the second volume. Moreover, many advanced
topics like computational geometry, fft, number theoretic algorithms
etc, which were introduced in the previous edition, seem to be missing
now - so the breadth of coverage seems to have reduced, which is a pity.
However, the depth has increased instead - i doubt that even Knuth
covers more sorting algorithms ! In particular, there are several
recent algorithms and data structures which are treated in greater
detail here than by Knuth. Of course, Knuth analyses all the
algorithms he presents in rigorous and exhaustive detail, which
this book doesn't.
Moreover, the book has many new algorithms and presents the state of the
art in sorting and searching algorithms, giving it a distinct advantage
over the older books.
Sedgewick makes it very clear in the preface that the emphasis is on
the practical importance of the algorithms, so esoteric algorithms which
are important 'only in theory' may find no mention. Also the emphasis is
more on the design of algorithms than on their analysis.
The number of (exercise!!) problems has multiplied manifold in this edition
to become more than most competing textbooks. Problems are graded by
difficulty level to help you choose the ones relevant to your needs.
The exposition is clear and authoritative - Prof. Sedgewick is a leading
authority in the field of algorithms and a student of Donald Knuth.
He has a gift for making difficult concepts seem simple, and the great
illustrations in the book go a long way in explaining the behaviour of
the algorithms.
For the practising professional, this is an ideal reference, since it'll
help you select the best algorithm for your task without bogging you
down with heavy mathematics.
The reasearcher, on the other hand, may benefit by gaining unique insights
from a master of the area, while using other books for the detailed
analysis of algorithms, including prehaps Sedgewick's own book on the
analysis of algorithms(with Flajolet).
A caveat - the code may not be 'ready to run'. It's better not to rely
on this book to provide you with usable code - if that is what you want,
perhaps the books by Drozdek/Weiss/Heileman/Rowe might be better choices.
If you want C code rather than C++, then the C version of this book is
a good choice, since the code provided is of 'K & R' class and therefore
a delight to read.
Of course, if you're looking for a language independent coverage,
then 'Introduction to algorithms' by Cormen,Leiserson and Rivest is
possibly the best book which combines rigor with comprehensive coverage
of the most important algorithms. Look out for the newly released
second edition.
And if you want a more rigorous and equally exhaustive coverage of
sorting and searching, go for Knuth vol.3 - still the authoritative
reference, though it may require more hard work on the reader's part.
Otherwise, invest in this and you won't be disappointed.
Crunch TimeReview Date: 2002-03-31
This book deals with a good number of algorithms and does not shy away from reasonable analysis. The book helped a lot when I was having problems with putting a good harsh function together.
The chapter on recursion is also very good too.
In order to write decent code you have to know about this difficult/painful subject and this book takes some of that pain away.

Used price: $80.00

Great book with horrible examples Review Date: 2008-07-16
So overall, I would suggest buying Adam Drozdek's algorithm book.
A treasure!Review Date: 2006-02-24
More Practical for Programmers Than Cormen'sReview Date: 2007-09-08
Very good examples and using Java is very smart because most OO programmers can easily understand the language (C# is practically identical).
For those who struggle with the Cormen book, (Like I did) it would do you well to get this book. You will refer to it time and time again in your career as a software developer while the Cormen book collects dust on the shelf.
Excellent bookReview Date: 2005-11-10
Cons: Java code is a bit "C-ish" and makes it clear that it is easy to write C program in Java. In addition, section Geometric Algorithms from 1990 edition and other material following this section is missing in newer editions. Maybe this material will be included in Volume 3, that as rumor says, is in preparation.
extremelly hard to follow bookReview Date: 2007-11-07
The author has the bad habit of start explaining a thing a little bit (not enough to fully understand it) then say something like "we will cover this topic in depth in chapter 7", and you are in chapter 2. This sort of jump back and forth is completely frustrating, the book doesn't seem to have any kind of flow. The same technique is used inside a chapter too, you start reading about something then the author start diverging in the middle of the topic to come back after few pages.
The code samples are a total mess, it's just really bad. I mean common, read any introductory book in software development and you get warned in the first chapter not to name your variables i,j,v i1...just give them a meaningful name.
Every time I read sample code in this book I had to spent at least 20 minutes deciphering what the variables are suppose to be, why the author define variables that are not used at all or they don't have any kind of effect on the end result (yes, I did found a whole bunch of these). If you don't know Java or don't care to follow any of Java standards fine, write C code or something, at least I will be prepared to read obfuscated code.
I give this book 2 stars, it has after all a lot of information in it, even if it is scattered all over the place

Used price: $80.00

Excellent reference books on C algorithmsReview Date: 2008-03-26
Sedgewick's books are now an essential part of my C programming reference library. I've referred to his books many times since I bought them. Unlike most technical references, these books are excellent, even if you aren't interested in C. Excellent texts.
Best of the bunchReview Date: 2004-08-19
I'm fed up with these booksReview Date: 2006-03-21
The pity is that there are very few other algorithm books that have real code. Demand a new edition from the author and don't by this one unless you can avoid it.
Lucid thought process - excellent coverage & examplesReview Date: 2002-07-24
The best book for beginnersReview Date: 2002-07-26

Used price: $87.58

Missing partsReview Date: 2007-08-30
InterestingReview Date: 2006-03-17
Even trough that, Id recommended part 5 because its a good collection of the most used algorithms based in graphs.
If you want to _really_ understand red-black trees.....Review Date: 2005-06-07
But I would like to particularly highlight the discussions on binary and n-ary search trees. The most enlightening discussion in print, giving the reader a real synoptic view of search tree algorithms, how they evolved, and their culmination in red-black trees.
Other reviewers have mentioned that the algorithms as presented here seem to be just warmed=over versions of their C counterparts presented in the C edition of this work. There is a germ of truth to this, but I really don't consider it to be a valid criticism of the books. The point here is not to present C++ coding techniques, but to understand algorithms. If you want to know what a state-of-the art C++ implementation of Red-Black trees looks like, just read the source code which comes with the GNU compiler toolchain. But you're not going to have a prayer of understanding it until you first understand how Red-black trees work--that's where this book comes in. If you are trying to explain the Red-black tree algorithm, you don't want all of the C++ do-dads and optimizations, templates, etc, all cluttering up the presentation of the skeletal algorithm.

Used price: $32.45

A Classic on Algorithms...Review Date: 2007-06-27
As a computer scientist for 20 years, few books have had as long lasting an impact as this book. What has always amazed me is that once you've worked your way through an algorithm, and Sedgewick's explanation, you remember it. For me, it was, and still is, a foundation of computer science and as ready a reference today.
Really liked the writing style, Sedgewick does a good job of keeping the explanation human-friendly. Face it, it's a book on algorithms, not quite a summer reading beach book. :-)
All told, I put this book up with the Knuth series...btw, Sedgewick was a student of Knuth's.
Enjoy, and hope it helps out as it did me.
Great book a must haveReview Date: 2006-11-05
However, this is NOT a book for those beginers, writer assumed that readers must have some strong background in both C programming and math. As many C code functions are left out.
There is a clear difference between IT and computer science, if you just make web pages, click mouse in windows, know a little bit about programming, you will find this is a book hard to read and follow. On the other hand if you are computer scientist, digging underground understanding of lists, tree, pattern matching. This book is, undoubtedly the one to go.
SedgeWorkReview Date: 2006-06-20
It does have some redeeming qualities. It does cover a fair amount of material about algorithms. It does offer insight not available elsewhere (at least not in book form). But this is not a reference work you can look at while coding at work and pull some algorithm out of that you forget the details about.
Some say this work is densely populated. I believe this to be a misunderstanding. This book is terse in some respects and filled with circumlocutions in other places. An example of a dense, and yet clear and concise technical book would be "The Annotated C++ Reference Manual".
The author leaves out so many fundamental and subtle points regarding the subject matter that no student could hope to come away with a thorough understanding -- unless of course you perform the following:
type_the_examples();
for (i = 0; i < MaxTimesBeforeBecomingFrustrated; i++)
{
study_section_of_text();
for(j = 0; j < RunTimesBeforeYouForgetWhatYouWereStudying; j++)
{
run_code();
examine_output();
analyze_program_source();
fix_errors_and_assumptions_from_text();
compile();
}
}
Assumptions are made with the code examples that require careful attention on the readers part or you WILL end up with Segmentation faults.
The book does provide the material needed to form a basis in exploring ideas in the covered algorithms. But I found that I had to read through the code examples and run the examples to be able to meaningfully interpret what the text was stating. The examples usually form a basis for reinforcing the reader's understanding of the text but with this book this paradigm is inverted; without the code examples it would be futile.
The author mentions, justifiably so, that changing the input data would change the runtime characteristics of some particular program. Well, try this with numerous examples in the text and you will demonstrate first hand not how the performance might change but just how fragile the code is as witnessed by your accompanying seg fault.
In the end, you can learn from this text but it requires a great deal of work, and quite a lot of debugging; more so that what is normally necessary. Learning any technical matter is work for the most part but learning from this text is, in my experience not enjoyable work. The above issues end up distracting the reader from being able to focus on learning the algorithms which is supposedly the reason you bought the book in the first place. My fear is that any young reader (all but the most ardent), who picks up this book as his/her first book on Algorithms will be turned off from Computer Science for good. We have enough of those books already.
I'm fed up with these booksReview Date: 2006-03-22
Instead of moving on to writing C++ and Java editions of this book, the author should fix the problems with this book and the part 5 book.
Demand a new edition from the author and don't by this one unless you can avoid it. You deserve better.
why someone give the book 5 star?Review Date: 2001-06-09
Related Subjects:
More Pages: 1 2 3
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.