Algorithms in C, Parts 1-4: Fundamentals, Data Structures, Sorting, Searching
S**N
It must not be easy to write a book talking about the algorithms
I bought this book was because I wanted to make use of C programming language to build something and also because I am interested in implementing the algorithm. However, After spending a few days reading through the first few chapters, I found that this book was really hard to follow. It was not about the difficulty of the content, but because the way how the author tried to explained the content. It must not be easy to write a book talking about the algorithms, so I never found it was easy to study algorithms across to a text book.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.
J**F
Worth 10 stars for the algorithms it explains
This book has helped me incredibly. The ideas that this book brings forward have been the basis of many programming applications that I subsequently created.
R**R
Goood
Really good book and detailed explanation on Algorithms.I have to stress that this is an Algorithm book but not a Programming Book
G**R
ok
book for college class.
T**H
Exceptional love for fine detail of highest quality
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!
A**R
A Classic on Algorithms...
...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.
L**E
Too much like a text book. Not enough like a reference
Let me start by saying I think the book has a lot of great information that is difficult to find in other sources. That being said, in my opinion, this book goes into too much detail. I purchased this in hopes that I could use it as a reference to answer on the job questions like, "which sorting algorithms should I consider for this data problem I have? and what are the pros and cons for each?". Instead I have found that you almost have to read the book from the beginning. It's less like a reference and more like a text book, with references to other parts of the book making it cumbersome to read.The other issue I have is that a lot of the examples use recursion. The author makes the claim that tail-recursion is just as efficient as iterative loops. I agree with this statement when C code is build with maximal optimization (04). When building for debug, tail recursion will still blow up stack space, so all of these recursive functions would still need to be converted to an iterative approach.The biggest writing style flaw I see in the text is the target audience. One minute I think the audience is a mathematician and the next I am convinced it is a product designer. A great deal of clarity would come from picking a particular target audience so that you don't have to explain everything as you go. (e.g. I already know C, I don't need to read about how pointers work. Put that information in an appendix).
J**N
Great book a must have
This is one of the best book that I have ever read. The writer explained data stucture in a very good detail.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.
A**R
not on same level as hopcroft or rivest, cormen book.
sedgewick disappoints in this book. not recommended.
P**T
Worst print.
Worst print.. Most of the textual content is inside book bind. Print is sometimes faded.. it is a true low price( and low quality) edition.
S**R
Usable Indian edition book
I am happy that the book is usable.
Trustpilot
2 days ago
1 month ago