Trade in your item
Get a £6.04
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
See this image

Algorithms in C: Fundamentals, Data Structures, Sorting, Searching Parts 1-4: Fundamentals, Data Structures, Sorting, Searching Pts. 1-4 Paperback – 17 Sep 1997

See all formats and editions Hide other formats and editions
Amazon Price New from Used from
"Please retry"
£46.04 £23.83

Trade In this Item for up to £6.04
Trade in Algorithms in C: Fundamentals, Data Structures, Sorting, Searching Parts 1-4: Fundamentals, Data Structures, Sorting, Searching Pts. 1-4 for an Amazon Gift Card of up to £6.04, which you can then spend on millions of items across the site. Trade-in values may vary (terms apply). Learn more

Product details

More About the Author

Discover books, learn about writers, and more.

Product Description

From the Back Cover

"This is an eminently readable book which an ordinary programmer, unskilled in mathematical analysis and wary of theoretical algorithms, ought to be able to pick up and get a lot out of.."
- Steve Summit, author of
C Programming FAQs

Sedgewick has a real gift for explaining concepts in a way that makes them easy to understand. The use of real programs in page-size (or less) chunks that can be easily understood is a real plus. The figures, programs, and tables are a significant contribution to the learning experience of the reader; they make this book distinctive.
- William A. Ward, University of South Alabama

Robert Sedgewick has thoroughly rewritten and substantially expanded his popular work to provide current and comprehensive coverage of important algorithms and data structures. Many new algorithms are presented, and the explanations of each algorithm are much more detailed than in previous editions. A new text design and detailed, innovative figures, with accompanying commentary, greatly enhance the presentation. The third edition retains the successful blend of theory and practice that has made Sedgewick's work an invaluable resource for more than 250,000 programmers!

This particular book, Parts 1-4, represents the essential first half of Sedgewick's complete work. It provides extensive coverage of fundamental data structures and algorithms for sorting, searching, and related applications. The algorithms and data structures are expressed in concise implementations in C, so that you can both appreciate their fundamental properties and test them on real applications. Of course, the substance of the book applies to programming in any language.

  • Expanded coverage of arrays, linked lists, strings, trees, and other basic data structures
  • Greater emphasis on abstract data types (ADTs) than in previous editions
  • Over 100 algorithms for sorting, selection, priority queue ADT implementations, and symbol table ADT (searching) implementations
  • New implementations of binomial queues, multiway radix sorting, Batcher's sorting networks, randomized BSTs, splay trees, skip lists, multiway tries, and much more
  • Increased quantitative information about the algorithms, including extensive empirical studies and basic analytic studies, giving you a basis for comparing them
  • Over 1000 new exercises to help you learn the properties of algorithms

Whether you are a student learning the algorithms for the first time or a professional interested in having up-to-date reference material, you will find a wealth of useful information in this book.

About the Author

Robert Sedgewick is the William O. Baker Professor of Computer Science at Princeton University. He is a Director of Adobe Systems and has served on the research staffs at Xerox PARC, IDA, and INRIA. He earned his Ph.D from Stanford University under Donald E. Knuth.


What Other Items Do Customers Buy After Viewing This Item?

Customer Reviews

There are no customer reviews yet on
5 star
4 star
3 star
2 star
1 star

Most Helpful Customer Reviews on (beta) 22 reviews
39 of 42 people found the following review helpful
Authoritative exposition, needs debugging 20 May 2001
By Dougabug - Published on
Format: Paperback
Prof. Sedgewick is a noted authority on searching and sorting algorithms, and a former student of Knuth's. The text is authoritative, lucid, and detailed. It is also full of mistakes, poorly edited, and much of the code has serious and not so serious bugs.
I have the second, corrected printing of this edition. If you purchase this book, consider buying Bently's "Programming Perls" or some other book on debugging software, and consider Sedgewick's book to be an excellent opportunity to debug a standard reference in CS. In addition to scrutinizing the source code, don't accept any statement in Sedgewick unequivocally. Even his formula for computing the variance of a distribution is incorrect (the accompanying code is correct, though it magnifies the roundoff error; read "Numerical Recipies in C" by Press et al for a more civilized calculation). Many of his proofs have off by one errors, he misdefines the "transitive" property as "associative". Get the lastest printing available, eventually enough students and instructors will have gone through this book to ferret out most of its errors. There are no giant lapses in reasoning, and once it makes it out of beta, this should be a very fine book.
A much better investment would be "Introduction to Algorithms" by Cormen, Lieserson, Rivest, a vastly superior and more interesting text. It has far greater scope of coverage on the subject of algorithms, and is both clearer and more carefully written, one of the most illuminating books I've read. However, volume 1 of Sedgewick, as it focuses solely on searching and sorting, covers these areas in greater depth, and discusses practical implementation issues, such as sentinels and hybrid sorts. As such, Sedgewick is a good compliment to CLR. Bear in mind that it is more densely written than CLR, and hence requires a more careful reading.
27 of 31 people found the following review helpful
Exceptional love for fine detail of highest quality 20 Jan 2000
By ThomasH - Published on
Format: Paperback
There are many books about algorithms, just a few can impress and influence people acting on the very threshold between theoretical research and development of complex software. Robert Sedgewick codes very carefully. Some readers might even fail to recognize the fine details in his code. Try to analyse even the simplest 2-3 liners. Compare the program 4.5 (Linked list implementation of a pushdown stack) or 4.10 (FIFO queue linked list implementation) to similar examples given by lesser authors, figure out the the percentage of redundant code given by others compared to this examples (it is 50% to 300% faster for this elementary cases!).
Another example: Look at the insertion sort with a sentinel. I am not aware of any other book showing this simple improvement. Also none of the insertion sorts which I saw in the practice use this so tiny add-on sentinel to achieve the quite dramatic speedup of the process.
Naturally, in the time of 700MHz processors here and there a couple of extra instructions might appear unimportant, but I disagree. This is a book showing the basic algorithmics and programming practices in their best, down to the "two liners", regardless what the complexity of the task is. These little "pearls" of coding are in the real world running countless times behind the scenes and are important. Look carefully, learn, master to code as he does!
As a very modern text, this is one of the few books dealing at least with some of the newer algorithms, like the skip lists or sorting networks. Not enough, though. Maybe we will see more in the next volume. There are also some omitions of the basic algorithms, which I would expect to be in such a book. See the rather terse chapter 7.8 about selection methods and look into Cormen, Leiserson, Rivest to see what I mean.
Despite such complaints, in my eyes this book occupies the worlds top-level rank among texts about algorithms for people who really make software and not just call library functions. I cannot wait to get my hands on the next volume being in preparation.
My (standard) point of criticism is that too many exercises are without answers and actually some of them are so complex that a nice chapter with yet some more algorithms would be in place. But almost every book about algorithms has this fault. On the end of a chapter you often see: Improve this, solve that. Its not good enough for a practitioner but it serves purpose for students.
Extraordinary are the illustrations of algorithm visualizations which I like so much in this book.
My tribut to the author to NOT to use the questionable quotes of famous people on the begin of each chapter, as it lately became an annoying habit. One of the worse examples of such a quote were the alleged words of Albert Einstein "make it as simple as possible but not simpler" placed in an book about C++ (what is a contradiction in itself and quite a presumption on authors part putting himself on a pedestal with... Einstein.)
But exactly such a quote might almost be applied to this text. Congratulations Mr. Sedgewick!
20 of 23 people found the following review helpful
Answers to exercises (at least half of them), please! 18 July 1999
By A Customer - Published on
Format: Paperback
I have decided that authors that are not willing to provide detailed solutions to at least the odd-numbered exercises are not worth reading. Why? Because first, where is the evidence that they know the answers to the exercises they present? But more importantly, how is the reader supposed to actually learn from the exercises if he can't see at least one possible solution and the rationale for that solution? This is the same reason why the Deitel & Deitel books are unacceptable. This isn't college anymore. Let's have some answers...if we knew how to do all this stuff already, we wouldn't need the book!
20 of 26 people found the following review helpful
Why do people like this book? 7 July 1999
By A Customer - Published on
Format: Paperback
It is strange to me why some people love this book so much. Admittedly, Sedgewick is very respected in his field and knows a lot about sorting algorithms, but his book is still dissapointing and very frustrating to read for a beginning computer science student. He seldom includes complete code in his examples, and where there is code, there are sometimes errors in the code.
This reviewer took Sedgewick's class at Princeton University where this book was the required text, and not only was the text poor, his lectures were terribly boring. He himself even recognized that there were errors in his book, and so he allowed his students and TA's to submit errors found in the book. At the end of the year, the list of references to mistakes in the book took up more than three pages.
This review is not the result of a student upset about his grade (an A is fine with me), but is rather an attempt to warn students about the potential pitfalls that may be encountered in reading Sedgewick's book. I suppose this could be a great book for an intermediate or advanced CS student who doesn't mind the sparse and sometimes erroneous code or the terse language used to describe fairly complex ideas. Also, there are some parts of the book that are well written and a pleasure to read. However, I would never recomend this book to anyone interested in learning algorithms for this first time without a fair amount of prior programming experience.
2 of 2 people found the following review helpful
A Classic on Algorithms... 27 Jun 2007
By Amazon Customer - Published on
Format: Paperback
...that is as relevant today as when it was first written.

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.
Were these reviews helpful? Let us know