3 ms·
>>Algorithm Design by Kleinberg and Tardos. Which other Algorithms book would you recommend?
by kamaal 8y ago
>>Algorithm Design by Kleinberg and Tardos.
Which other Algorithms book would you recommend?
- gjm11 8y agoI recommend getting two. Introduction to algorithms, Cormen/Leiserson/Rivest/Stein. Rigorous, detailed, thorough. Dry, technical, intimidating. The algorithm design manual, Skiena. Friendly, informal, heuristic, insightful. Sloppy, handwavy, gappily incomplete. They fill one another's gaps very nicely. [EDITED to add:] I haven't read Kleinberg & Tardos, recommended above; it sounds like it may fill much the same niche as Skiena.
- vinayms 8y ago> The algorithm design manual, Friendly, informal, heuristic, insightful. Sloppy, handwavy, gappily incomplete. Kleinberg and Tardos is also friendly, informal, insightful, and even heuristic to an extent, but opposite of the others, so IMO its much better and very different than Skiena's, though it isn't a quick read before an exam or an interview sort of a book, which is what Skiena's can be described as. Browse K&T to see what I mean.
- vinayms 8y agoRobert Sedgewick's Algorithms in C++ 3rd Edition. This is the book that introduced me to the wonderful world of algorithms, and I love it. The introduction chapter was a revelation and nothing like I had read before. I didn't understand everything in the first read but it made me to want to. The book is more accessible and practical than Knuth and CLRS, and more thorough than Skiena and such. Everything about this book is beautiful, not the least of which is the visualization of sort algorithms. There is also abundant tree related topics, which is quite refreshing and useful, in hindsight, because trees, other than balanced binary ones, are generally ignored in most books where graph steals the limelight. There are two volumes that make this book, first having Parts 1 to 4, dealing with fundamentals, DS, sort and search, and the second, Part 5, dealing exclusively with graphs. I have only the first one and the opinion is based on that. There is a newer Java version, which includes the graph topics, and is about 250 pages longer than the first volume. However, based on the preview, it seems almost first 120 pages are dedicated to the Java language and OOP, unlike the C++ version which starts directly with the subject, so not sure how much of the contents are removed to make room, and how the quality differs.