The Algorithm Design Manual: Skiena, Steve S.: 9781848000698: Amazon.com: Books (original) (raw)
Customers say
Customers find this algorithm manual comprehensive and well-written, providing detailed explanations of important algorithms and practical techniques. The book is easy to read and serves as an excellent reference guide, with one customer noting its extensive bibliography. Customers appreciate the writing style, with one highlighting its emphasis on problem formulation, and they enjoy the content, with one mentioning it's particularly useful for interview preparation.
47 customers mention "Content quality"39 positive8 negative
Customers appreciate the book's content, describing it as a comprehensive guide through algorithms and data structures with detailed explanations of common topics. One customer notes the thorough coverage of motivations behind each strategy, while another highlights the extensive 43-page bibliography.
"Like overall the content is good, but I got this for self study and because there's no answers in the back, there's no way to check my work...." Read more
"...and too simple-- with hundreds of practical techniques that give a great overview of nearly every type of algorithm problem we encounter...." Read more
"...to know about data structures It's pretty easy to read with great explanations and fairly clear code...." Read more
"Excellent and detailed explanations of both the more elementary, and advanced data structures and sorting that both a comp sci student, seasoned..." Read more
46 customers mention "Enlightenedness"42 positive4 negative
Customers find the book instructive, with one customer noting it serves as a practical field guide to solved problems, while another mentions it provides hundreds of practical techniques and references for further reading.
"...He gives great insights into algorithm challenges he faced over the years...." Read more
"...part of the book gives a nice overview of algorithms, with some interesting examples and inspiring war stories...." Read more
"...+Great writing style +Lots of sample code +Lots of practice problems..." Read more
"...There are some interesting points and I liked that it has a section on heuristics...." Read more
42 customers mention "Algorithm book"39 positive3 negative
Customers find this book to be an excellent overview of important algorithms and consider it the best introduction to algorithm design. One customer notes it is up-to-date with C programming, while another mentions it has transformed their programming skills.
"This book is by far the best algorithms book I've read...." Read more
"It's a fun and informative read. This is by far the best book on Algorithms!..." Read more
"...A good read and must have for programmers." Read more
"Probably one of the best distillations of algorithms in a pragmatic approach that you'll find...." Read more
29 customers mention "Book content"29 positive0 negative
Customers find this book to be a very good reference and essential for self-study, with one customer noting it's particularly useful for preparing for interviews.
"Very good reference book I use it often" Read more
"It's a fun and informative read. This is by far the best book on Algorithms!..." Read more
"Good book for beginners. If you are good at basics I recommend CLRS over Design Manual. (Personal Opinion)" Read more
"...A GOOD BOOK TO HAVE AS A REFERENCE. IT COVERS MANY TOPICS ON THE SUBJECT." Read more
25 customers mention "Readability"18 positive7 negative
Customers find the book easy to read and accessible, with one customer noting that the patterns are clear and translatable.
"...Overall, easy to read and has great example. If you want to learn the basics and a little more about algorithms, this is the book." Read more
"Excellent book! It's clear, concise, and not too "mathy"--a good reference for the times you need to remind yourself about standard..." Read more
"...Sometimes it is a little hard to follow. I like the sense of humor. The book is somewhat poorly bound, but not the worst I have seen." Read more
"First and foremost, it truly is a reader-friendly and thoroughly comprehensive book which provides immediate access to understanding what algorithms..." Read more
16 customers mention "Writing style"13 positive3 negative
Customers appreciate the writing style of the book, finding it well written and easy to understand, with one customer noting its heavy emphasis on formulating problems.
"+Excellent coverage of the material +Great writing style +Lots of sample code +Lots of practice problems..." Read more
"Very well organized and written in easy to understand language. Problems presented are tough and explained beautifuly...." Read more
"...Overall the book is well written and provides examples of how a particular data structure can be used...." Read more
"...it is a joy to read with Skiena's "war stories" and his lively writing style...." Read more
13 customers mention "Enjoyment"12 positive1 negative
Customers find the book entertaining and enjoyable to read, appreciating its sense of humor.
"...for finding the right algorithmic approach to a problem, it is a joy to read with Skiena's "war stories" and his lively writing style...." Read more
"...this book for his author Steven Skiena, is very important and interesting due to content the algorithms more important and elements for the..." Read more
"One of the best book on algorithms, it keeps you engaged...." Read more
"...Very lucid but interesting at the same time. Very highly recommended for students who wants to study Computer Science." Read more
12 customers mention "Reference quality"11 positive1 negative
Customers find the book to be a good reference, with one mentioning it includes references to software libraries.
"...It's clear, concise, and not too "mathy"--a good reference for the times you need to remind yourself about standard algorithms or..." Read more
"...previous reviews pointing out errors corrected, making this an outstanding reference...." Read more
"This book has a ton of detail and will be a great reference, but for some reason they failed to include the page numbers with the digital copy...." Read more
"...All the references for each catalog entry will take you on internet journey more frequently than you would think - if you want to dig deeper...." Read more
Images in this review
Reviews with images
![]()
Great book but I received counterfeit copies
Buyer beware! Amazon appears to be selling counterfeit textbooks. I have notified Amazon of this problem and re-purchased and still received what I believe to be counterfeits due to the very poor quality of the color, binding, printing, and horrible misspellings on the back of the book in particular. The contents of the book is great BTW. However I'd recommend buying direct from publisher.
Thank you for your feedback
Sorry, there was an error
Sorry we couldn't load the review
Top reviews from the United States
There was a problem filtering reviews. Please reload the page.
Reviewed in the United States on April 11, 2013
This text strikes a perfect balance between too complex and too simple-- with hundreds of practical techniques that give a great overview of nearly every type of algorithm problem we encounter. This is NOT a "theory" text about big Oh (although it has a chapter), efficiency, p vs np and advanced calculus and linear algebra, but does show practical ways to design algorithms and answer questions in that interview.
As an example, older calculators always started "high" when finding quadratic factors or square roots. Skiena (p. 134) shows that three possible "front ends" can make subsequent iteration (trial and error until you're done) faster and more efficient: 1. The older always start high method 2. A common bisection technique-- split the problem, then, by "divide and conquer" go higher or lower and 3. Use interpolation to get closer sooner, then iterate.
The book is set up both as a self study and year long course text, but frankly the presentation is far from academic and much more rubber hits the road practical, realistic, design. The background is given with pseudocode, then the basic level of math needed to get the job done without pages of theory and proofs of Big Oh efficiency, etc.
Since 2008, the next edition in 2010, and this 2012 "printing corrections" edition (not considered a true edition, but contains many detailed corrections), this book has found a great audience in interview prep, because the author takes such a real world approach to solutions. Make sure you get the corrected edition if you buy from an Amazon third party vendor, you will if you get it directly from Amazon.
Highly recommended for all levels of programmers. The index also has been updated, and some of the previous reviews pointing out errors corrected, making this an outstanding reference. As if 700 pages weren't enough, the author also provides 19 sections of practical reviews of online resources and a detailed 43 page very current bib. If you're looking for a difficult to find "vein" of info (say, for example, on CAS algos), you'll find a wealth of info in these sections. Many volumes call themselves cookbooks, this really IS the best of that genre. If you can afford only one algo book, and want to use it without a tutor, teacher or coach, this is the one. Don't take that to mean it's simple-- it's just as deep as the academic texts, but simply removes all the math you don't use every day anyway. It's really more for programmers than researchers, but researchers would still learn a lot about how practical algo writers frame problems.
Library Picks reviews only for the benefit of Amazon shoppers and has nothing to do with Amazon, the authors, manufacturers or publishers of the items we review. We always buy the items we review for the sake of objectivity, and although we search for gems, are not shy about trashing an item if it's a waste of time or money for Amazon shoppers. If the reviewer identifies herself, her job or her field, it is only as a point of reference to help you gauge the background and any biases.
30 people found this helpful
Report
Reviewed in the United States on October 26, 2009
I've read through the first half of the book, and am now at the catalog of algorithms that makes up the second half, and I've really enjoyed the book so far.
Most books on algorithms take a very formal, math heavy approach in which they present, analyze and prove things about a somewhat arbitrary collection of algorithms. There's usually no mention of real world applications.
This book, however, takes a different approach, and serves as a guide book for using algorithms in the real world. There's a heavy emphasis on formulating problems in terms of existing, solved problems. If you can "map" your problem to one with a known solution, then you can use the proven, existing solution to solve your problem. To emphasize that point, roughly the entire second half of the book is a catalog of known problems and solutions, with references to software libraries, books and other sources of information.
I also love that the example code is in C. Too many books give example code in languages with a lot of overhead, like Java, and end up obscuring the important parts with a ton of object-oriented crap. Yes - OOP is nice, but unless I'm reading a book on OOP, I don't want to dig through 30 lines of irrelevant boilerplate just to find the 10 lines relevant to the algorithm.
That said, it's not the best code in the world. Some of the snippets could be explained better. And there were a few stylistic issues, such as leaving off function return types and a bunch of global variables, that I didn't like, but I'm willing to forgive those because it's not a book on C, and the lack of syntactic clutter made the algorithm easier to see.
I also thought chapter nine was a bit too long. A good portion of the chapter is spent reducing various NP-complete problems to other NP-complete problems. Interesting, but it was a bit too theoretical, and didn't really fit with the with the rest of the book.
20 people found this helpful
Report
Reviewed in the United States on March 30, 2019
I LOVE LOVE LOVE this book. It is so easy to read, and so practical ... concepts are explained wonderfully, with example code and very clear descriptions of motivations behind each strategy ... i LOVE the "stop and think" sections given for most sections where alternative solving methods are presented, and the catalog of problems in the back is just genious .. i LOVE the way this book is written in a very practical way, but with enough theory to give a holistic learning experience ... some books just drag on and on with theory, which is great, but actually many times extra uneeded information .. this book somehow seems to just get right to the heart of the concept and rounds each one out so beautifully ... Dr. Skiena this is truly an accomplishment, congrats and know that you will be helping countless software engineers for years to come with this book. (we all have that big white algos book, but this one, at probably a third of the size, is WAY better in my opinion) :)
Reviewed in the United States on January 28, 2013
I purchased this book (Kindle edition) to brush up on what I learned in Algorithms class over a decade ago. I found it has amazing and detailed information, and if I was teaching an algorithms course this would be THE text book. However, I found at times Skiena's presentation to unnecessarily complicate some of the material. Without a lecture to help clarify I found even myself getting confused. For this reason I can't give it 5 stars and would recommend watching MIT's video lectures on Algorithms first if you are a novice, and that should help enough to smooth over some of this book's rough edges in your mind. Other than that the "War Stories" are great tails of practical real-world algorithm solutions, and I loved the emphasis Skiena uses on proper data-structure selection for various algorithms and the comparison tables. I also liked the quick reference/cook-book chapter to aid in solving encountered problems.
13 people found this helpful
Report
Top reviews from other countries
5.0 out of 5 stars Um dos Melhores Livros de Algoritmos
Reviewed in Brazil on January 17, 2019
É uma das melhores escolhas para quem procura aprender a desenvolver algoritmos, as explicações são concisas e bem organizadas, possuem imagens para facilitar a compreensão e relatos das aplicações dos algoritmos no mundo real. Os códigos de exemplos são escritos na línguagem C com uma fonte semelhante a das IDEs e editores utilizados pelos programadores. O livro está dividido em duas partes uma com toda a fundamentação teorica da construção e analise de algoritmos e outra com uma espécie de "guia do mochileiro de algoritmos" categorizando os problemas, estruturas de dados em capítulos e explicando soluções para eles.![]()
5.0 out of 5 stars
Um dos Melhores Livros de Algoritmos
Reviewed in Brazil on January 17, 2019
É uma das melhores escolhas para quem procura aprender a desenvolver algoritmos, as explicações são concisas e bem organizadas, possuem imagens para facilitar a compreensão e relatos das aplicações dos algoritmos no mundo real. Os códigos de exemplos são escritos na línguagem C com uma fonte semelhante a das IDEs e editores utilizados pelos programadores. O livro está dividido em duas partes uma com toda a fundamentação teorica da construção e analise de algoritmos e outra com uma espécie de "guia do mochileiro de algoritmos" categorizando os problemas, estruturas de dados em capítulos e explicando soluções para eles.
Images in this review
3.0 out of 5 stars This Kindle format isn't great
Reviewed in Australia on April 10, 2021
The book itself is great, but the Kindle format and layout doesn't match the quality of the book. After reading it for a minute my eyes felt strained, and you can't change the font size of the code hunks in this book, which is really on my device. Btw, Amazon should allow customers review content and packaging separately, I feel like I've sinned when giving a 3 stars to this book.
5.0 out of 5 stars Lo consiglio
Reviewed in Italy on March 31, 2021
Un libro che non può mancare ad un Ingegnere Informatico
5.0 out of 5 stars A real manual to building ideas
Reviewed in the United Kingdom on January 16, 2014
What I like about this book is that, it does not talk about what a particular algorithm does and how it is implemented, but more it takes you on a flight between two algorithms. It trains the methodology, logical plan how (and possibly why) one takes off from an earlier algorithm and goes on developing something new.
A must read for any computer scientist, student or educator, who likes to invest more in ideas than the actual details.
5.0 out of 5 stars Ein Kochbuch mit leckeren Menüs
Reviewed in Germany on February 24, 2010
Ich bin quasi neu in der "Optimierer Szene". Das ist erst mein drittes Buch über Optimierung. So please take my review with a grain of salt.
Mein spezifisches Optimierungsproblem ist ein "Integer/Combinatorial Otimization" Problem. So NP vollständig wie ein Problem nur sein kann und leider auch keiner der Klassiker aus der akademischen Literatur (kein TSP, kein echtes VRP, kein shortest Path, kein Knapsack...). oder wenigsten seh ich es so (was nicht viel aussagt.....leider). Also bin/war ich auf der Suche nach einem Buch, das es einem eine Einführung in das Design von Algos bietet. Obwohl das Buch weniger über Heurismen und Meta-Heurismen handelt, wie ich es mir erhofft habe, war es doch ein echter Glückstreffer, der mir bestimmt cnoch tolle Dienste leisten wird. Der I Teil des Buches behandelt das genereölle Design von Algos, Teil II ist ein Katalog/eine Klassifizierung von Problemen.
Das Buch deckt also recht viele Themenbereiche ab (einfach mal einen Blick ins Inhaltsverzeichnis werfen). Kurz und knapp, dafür aber sehr übersichtlich, prägnant und gut verständlich. Kein Formelmarathon und trotzdem, so finde ich, mit genügend Tiefe. Die "War Stories" sind unterhaltsam aber auch lehrreich. Auf der Home Page des Autors gibts code und interessante links.
Ich finds Klasse!