- Paperback: 720 pages
- Publisher: Addison-Wesley Professional; 3 edition (September 27, 1997)
- Language: English
- ISBN-10: 0201314525
- ISBN-13: 978-0201314526
- Product Dimensions: 7.8 x 1.5 x 9.1 inches
- Shipping Weight: 2.9 pounds (View shipping rates and policies)
- Average Customer Review: 25 customer reviews
- Amazon Best Sellers Rank: #822,785 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Algorithms in C, Parts 1-4: Fundamentals, Data Structures, Sorting, Searching (3rd Edition) (Pts. 1-4) 3rd Edition
Use the Amazon App to scan ISBNs and compare prices.
Fulfillment by Amazon (FBA) is a service we offer sellers that lets them store their products in Amazon's fulfillment centers, and we directly pack, ship, and provide customer service for these products. Something we hope you'll especially enjoy: FBA items qualify for FREE Shipping and Amazon Prime.
If you're a seller, Fulfillment by Amazon can help you increase your sales. We invite you to learn more about Fulfillment by Amazon .
Frequently bought together
Customers who bought this item also bought
Customers who viewed this item also viewed
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.Highlights
- 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
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.
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
I think that it also depends on the person. For me, I prefer to pick up the algorithms through as many as problems and practices, not explanations and analysis. However, I believe that this book is thoughtful enough for those who want be professional in teaching algorithms or talking about algorithms in depth.
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.
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.
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:
for (i = 0; i < MaxTimesBeforeBecomingFrustrated; i++)
for(j = 0; j < RunTimesBeforeYouForgetWhatYouWereStudying; j++)
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.