4 ms·
The '2nd Edition' is misleading in the title, this edition has been out for around three years. Amazon reviews are quite scathing for this book, people complai
by joshvm 12y ago
The '2nd Edition' is misleading in the title, this edition has been out for around three years.
Amazon reviews are quite scathing for this book, people complain about poor explanations and lots of mistakes. Apparently there's a long errata, but even in 2012 people were moaning.
Can anyone corroborate this? There's also a camp of people that says it's one of the best books around. I've got Intro to Algorithms on my bookshelf here which is a doorstop, but not bad in a pinch if I want something other than google.
- sbuccini 12y agoI'm also curious as to what level of student this targets. Would this be good for brushing up on my sorts and data structures for my interviews, for example?
- idle_processor 12y agoSteve Yegge (Amazon, Google) of Stevey's Blog Rants seemed to think so. > My absolute favorite for this kind of interview preparation is Steven Skiena's The Algorithm Design Manual. More than any other book it helped me understand just how astonishingly commonplace (and important) graph problems are – they should be part of every working programmer's toolkit. The book also covers basic data structures and sorting algorithms, which is a nice bonus. But the gold mine is the second half of the book, which is a sort of encyclopedia of 1-pagers on zillions of useful problems and various ways to solve them, without too much detail. Almost every 1-pager has a simple picture, making it easy to remember. This is a great way to learn how to identify hundreds of problem types. Source: http://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html http://steve-yegge.blogspot.com/2008/03/get-that-job-at-goog...
- joshvm 12y agoA friend of mine was applying to various large tech companies and recommended Programming Interviews Exposed (Mongan). It's got good coverage of standard interview algorithms as well as broader topics like concurrency, oop, databases and tech-specific interview prep. He didn't get the job at Google unfortunately, but he did get a job in ESA's flight dynamics team which I think is far cooler.
- PublicEnemy111 12y agoIf you're looking for a comprehensive review including both intuition and theory, I'd be remiss if I didn't recommend CLRS(http://mitpress.mit.edu/books/introduction-algorithms http://mitpress.mit.edu/books/introduction-algorithms) I personally believe understanding intuition and theory are more important than simply being able to recite an algorithms implementation.
- nitishmd 12y agoThis is really a great book to read if your prepping up for an interview or in general just want to study algorithms. This book is much more readable as compared to CLRS which is very dense and pedagogical. This book is more like novel as in the author also describes his personal experiences in short snippets called war stories which are pretty fun to read. The second half of the text book describes problems and solutions. If your looking interview prep then the 2nd part of text book would be really helpful.
- Tiktaalik 12y ago100% agree with this. Very readable, and easy to dip into for an interview prep. CLRS is very academic.
- jlarocco 12y agoI don't think "scathing" is the appropriate word here. It has 4.3 stars after 80 reviews, which seems pretty good to me. In any case, to answer your question, I read the book a few years ago and thought it was really good. I don't remember there being many mistakes, and I didn't mention any in my review on Amazon, but I may have just not noticed. It's definitely my favorite algorithms book, because it's more practical than books like Intro to Algorithms and TAOCP. A large portion of those books are dedicated to proving theorems and big-O run times, and things like that. This book skips over most of the proving and math, tells you what the big-O run time is, gives an implementation in C, walks through the algorithm in a way that actually explains what it's doing, and points to other resources for the deeper math. If I needed to implement an algorithm, I'd grab this book. If I was curious about the math behind it, I'd grab TAOCP or Intro to Algorithms.
- joshvm 12y agoPerhaps some bias from the Amazon UK page, fewer reviews and the bad ones are at the top. I think a good example of this problem is Numerical Recipes. It's got a 4.5 in Amazon UK, slightly lower in Amazon US. Many people agree that it's not a good book - the main issue is that the authors apparently have little expertise in the areas they're professing to claim expertise in. http://www.stat.uchicago.edu/~lekheng/courses/302/wnnr/nr.html http://www.stat.uchicago.edu/~lekheng/courses/302/wnnr/nr.ht... I'm sure Skiena knows his stuff, so that doesn't worry me, but it's entirely possible that people miss the mistakes. I'd just like to know why people gave such bad reviews.
- sytelus 12y agoIt appears that lot of people consider math in CS book as optional and think it's just there to make book look more serious. I actually LOVE having math in CS books. Without math you only know what is the "fact", but with math you can understand why it is the fact. On the other end, CLRS is far from perfect. My two issues with CLRS are: 1. Many critical topics are missing entirely while lot of non-critical stuff have gotten in to. There is a discussion started out by Professor Corman at Quora for suggestions for 4th edition here: http://www.quora.com/As-we-start-planning-the-next-edition-of-Introduction-to-Algorithms-CLRS-what-should-we-add-and-what-should-we-remove http://www.quora.com/As-we-start-planning-the-next-edition-o... 2. CLRS doesn't often try to make you understand the topic or algorithm. For example, for BST it will just say this is how you find successor node and it's entirely your job to think why this is the best way or why other alternatives won't be good. The way I deal with this is stop reading after chapter introduction and think about for a while how I would have solved problem and then read explanation in the book. This often illuminates subtle points of algorithms. I ended up annotating huge swath of text in my own PDF copy.
- justin66 12y agoI don't know anything about the errata but the bit about the poor explanations doesn't ring true. I use this book purely for the explanations. Specifically, I'll usually look at Sedgwick's Stanford mooc videos if I need a refresher, but if I need a big-picture look to see what algorithms I should consider using, this book is the starting point. There are some bigger, all-inclusive type books but Skiena does a good job of being accessible, covering a lot of ground, and providing references to implementations and further reading.
- dang 12y ago> The '2nd Edition' is misleading in the title, this edition has been out for around three years. Thanks for pointing that out. We excised that bit.