The Algorithm Design Manual and over 2 million other books are available for Amazon Kindle . Learn more

  4,855.00 + FREE Delivery

More Buying Choices
Fast Media 2 Add to Cart
  5,461.57 + FREE Delivery
uRead-shop Add to Cart
  6,784.00 + FREE Delivery Eligible for Cash on Delivery. Details
The Algorithm Design Manual
 
See larger image
 
Start reading The Algorithm Design Manual on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

The Algorithm Design Manual [Import] [Hardcover]

Steven S Skiena
100% Purchase Protection

Price:   4,855.00 FREE Delivery. Eligible for Cash on Delivery. Details
  Inclusive of all taxes
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
EMI Available. Options
Usually dispatched in 2 to 3 weeks.
Sold and fulfilled by Atlantic Publishers and Distributors.

Formats

Price New from
Kindle Edition   4,245.59  
Hardcover, Import   4,855.00  
Paperback, Import   5,645.00  

10% Cash Back on SBI Debit & Credit Card transactions above Rs. 2,500

10% Cash Back on SBI Credit & Debit Card purchases above Rs. 2,500 Up to ₹ 1,250 Cash Back per Card. Limited period offer. > Learn more

Book Description

14 November 2011

Most professional programmers that I’ve encountered are not well prepared to tackle algorithm design problems. This is a pity, because the techniques of algorithm design form one of the core practical technologies of computer science. Designing correct, efficient, and implementable algorithms for real-world problems requires access to two distinct bodies of knowledge: • Techniques – Good algorithm designers understand several fundamental algorithm design techniques, including data structures, dynamic programming, depth first search, backtracking, and heuristics. Perhaps the single most important design technique is modeling, the art of abstracting a messy real-world application into a clean problem suitable for algorithmic attack. • Resources – Good algorithm designers stand on the shoulders of giants. Rather than laboring from scratch to produce a new algorithm for every task, they can figure out what is known about a particular problem. Rather than re-implementing popular algorithms from scratch, they seek existing implementations to serve as a starting point. They are familiar with many classic algorithmic problems, which provide sufficient source material to model most any application. This book is intended as a manual on algorithm design, providing access to combinatorial algorithm technology for both students and computer professionals.


Customers Who Viewed This Item Also Viewed


Product Description

Review

From the reviews of the second edition:

“This is detailed and timeless book that I keep reaching for. A useful book that I can not keep access to long enough. It is a important book to have in your library. Unlike other algorithm books that I have the algorithms are written independent of any programming language.” (Mary Anne, Cats and Dogs with Data, maryannedata.com, April, 2014)

“The Algorithm Design Manual by Steven Skiena is aimed at two groups of people: students and professionals. … It is written in an informal style that I found pleasant and engaging. … The book’s unique structure makes it more likely to be immediately useful to the practitioner who has problem to solve and wants to quickly make progress … . the book succeeds admirably. … would be helpful to the student who has never seen this material before. … Overall, I recommend this book warmly.” (Neelakantan Kartha, The Book Review Column, 2011)

“Algorithms are the very heart of computing … . This book is about right for most people. … Each of the topics is treated in a readable informal style with lots of asides and accounts of personal experiences - ‘war stories’ in implementing algorithms. … If you want to use it as a course textbook then there are lots of exercises at the end of every chapter. Highly recommended.” (Mike James, I Programmer, September, 2009)

"Addressing the main difficulties of solving problems, this book goes far beyond the design of algorithms. It is essential for scientists, engineers, and any professionals who aim to solve problems, with a noticeable emphasis on real problems. It will not only serve as a valuable undergraduate textbook, but it will also become an irreplaceable reference guide for most professionals in the area." (Carlos Linares Lopez, Computing Reviews, February, 2009)

"Skiena focuses on the practical aspects of algorithm design and use. … this work fills an important gap in the knowledge of CS practitioners and students. … this book is suitable as a text for an undergraduate algorithms class, but also as an invaluable reference for the practicing programmer. … This second edition has updated the bibliography to include recent works, making it an extensive bibliography. The index is also thorough and very useful for finding specific problems." (William Fahle, ACM Computing Reviews, December, 2008)

"For a decade, Steven Skiena’s Algorithm Design Manual retained its title as the best and most comprehensive practical algorithm guide to help identify and solve problems. It is now available in an improved second edition that is worth buying simply for the updates. … Every programmer should read this book, and anyone working in the field should keep it close to hand. … Would I recommend it? Absolutely. This is the best investment … a programmer or aspiring programmer can make." (Harold Thimbleby, Times Higher Education, November, 2008)

"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 … 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. … 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." (Steve Yegge, Steve Yegge’s Blog, March, 2008)

"...the book is an algorithm implementation treasure trove, and putting all of these implementations in one place was no small feat. The list of implementations, an extensive bibliography … make the book an invaluable resource for everyone interested in the subject." (ACM Computing Reviews)

From the Back Cover

....The most comprehensive guide to designing practical and efficient algorithms!....

The Algorithm Design Manual, Second Edition

"...the book is an algorithm-implementation treasure trove, and putting all of these implementations in one place was no small feat. The list of implementations [and] extensive bibliography make the book an invaluable resource for everyone interested in the subject." --ACM Computing Reviews

"It has all the right ingredients: rich contents, friendly, personal language, subtle humor, the right references, and a plethora of pointers to resources." -- P. Takis Metaxas, Wellesley College

"This is the most approachable book on algorithms I have." -- Megan Squire, Elon University, USA

This newly expanded and updated second edition of the best-selling classic continues to take the "mystery" out of designing algorithms, and analyzing their efficacy and efficiency. Expanding on the first edition, the book now serves as the primary textbook of choice for algorithm design courses while maintaining its status as the premier practical reference guide to algorithms for programmers, researchers, and students.

The reader-friendly Algorithm Design Manual provides straightforward access to combinatorial algorithms technology, stressing design over analysis. The first part, Techniques, provides accessible instruction on methods for designing and analyzing computer algorithms. The second part, Resources, is intended for browsing and reference, and comprises the catalog of algorithmic resources, implementations and an extensive bibliography.

NEW to the second edition:

Doubles the tutorial material and exercises over the first edition

• Provides full online support for lecturers, and a completely updated and improved website component with lecture slides, audio and video

• Contains a unique catalog identifying the 75 algorithmic problems that arise most often in practice, leading the reader down the right path to solve them

• Includes several NEW "war stories" relating experiences from real-world applications

Provides up-to-date links leading to the very best algorithm implementations available in C, C++, and Java

ADDITIONAL Learning Tools:

• Exercises include "job interview problems" from major software companies

• Highlighted take-home lesson boxes emphasize essential concepts

• Provides comprehensive references to both survey articles and the primary literature

• Exercises point to relevant programming contest challenge problems

• Many algorithms presented with actual code (written in C) as well as pseudo-code

• A full set of lecture slides and additional material available at www.algorist.com

Written by a well-known algorithms researcher who received the IEEE Computer Science and Engineering Teaching Award, this new edition of The Algorithm Design Manual is an essential learning tool for students needing a solid grounding in algorithms, as well as a special text/reference for professionals who need an authoritative and insightful guide. Professor Skiena is also author of the popular Springer text, Programming Challenges: The Programming Contest Training Manual.


Product details

  • Hardcover: 730 pages
  • Publisher: Springer; 2nd ed. 2008 edition (14 November 2011)
  • Language: English
  • ISBN-10: 1848000693
  • ISBN-13: 978-1848000698
  • Product Dimensions: 23.9 x 18.3 x 3.6 cm

Customer Reviews

There are no customer reviews yet on Amazon.in
5 star
4 star
3 star
2 star
1 star
Most Helpful Customer Reviews on Amazon.com (beta)
Amazon.com: 4.4 out of 5 stars  78 reviews
37 of 39 people found the following review helpful
4.0 out of 5 stars Great book. Maybe a beginner book, but not for comp sci novices! 3 October 2010
By E. Jones - Published on Amazon.com
Format:Kindle Edition|Verified Purchase
I've got the Cormen book as well, which I love. This book is a much more readable text, by far. I think that others here have broken down the areas covered quite well; so I'll just give a stream of consciousness version of what I liked about the book.

It gives the subject matter with from a need to know standpoint. It also gives you real world examples of how the author has had to utilize algorithms not just to implement a particular solution, but to also optimize existing solutions. Although it doesn't give the hardcore theoretical breakdowns in Cormen's text, don't think that the subject matter is presented in a lightweight format. You will still be given some level of mathematical proof for some algorithms and data structure optimizations.

Although less terse than the typical text on Algorithms, it doesn't try too hard to be cute and quirky. The humor is well placed and not too overbearing.

Though less academic than "Introduction To Algorithms", this ain't the book to pickup to learn about coding algorithms for a quick study prior to an interview. However, if you're planning to get ready for interviews maybe a few months down the road...go for it!

A caveat...I got the Kindle version for the Android, which is none too forgiving when it comes to images. So diagrams look horrible on the phone (even with the DroidX's big-assed screen). It looks fine on the laptop, however.

Enjoy!
44 of 50 people found the following review helpful
5.0 out of 5 stars Good book 3 October 2012
By Walter E. Gillett - Published on Amazon.com
Format:Kindle Edition|Verified Purchase
[update - Feb, 2014]

Several other reviewers say that the problems I reported originally with the Kindle edition of this book have been fixed. I no longer own the book (got a refund in 2012), so can't confirm that directly. Changing the review title and upgrading to 5 stars accordingly (I would prefer just to delete the review entirely but that does not appear to be possible).

--------

[original review - Oct, 2012]

It's a good book but I have discovered that key parts of the Kindle edition are garbled, making the book useless. Buy the physical book, not the Kindle edition, don't make my mistake!

For example, take a look at the "ClosestPair(P)" algorithm described on p7 of the hardcover edition, see the preview http://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena/dp/1848000693/ref=tmm_hrd_title_0 . Compare that to the same algorithm shown in the Kindle edition: http://www.amazon.com/The-Algorithm-Design-Manual-ebook/dp/B0016H523Q/ref=tmm_kin_title_0 . The indentation is completely messed up and worse yet, there are other mistakes like "if dist(s, t) <= d" becomes "if dist(s, t) = d" (the "<=" changes to just "=") that are completely wrong.
78 of 92 people found the following review helpful
5.0 out of 5 stars Could be called "The Joy of Algorithms" 31 December 2009
By George H. - Published on Amazon.com
Format:Hardcover|Verified Purchase
My Dad loved to cook and one of his favorite cookbooks was "The Joy of Cooking." By the time he died, the pages of his copy were stained and dusted with flour from being constantly used in his kitchen.

Why did he like it so much? Because not only did it have great recipes, it also explored the basic ingredients and methods and told interesting stories about cooking.

That's why "The Algorithm Design Manual" could be called "The Joy of Algorithms." Not only has it become my "goto" book 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.

Just like my Dad's "The Joy of Cooking" was never far from his stove, "The Algorithm Design Manual" will never be far from my computer.
26 of 29 people found the following review helpful
3.0 out of 5 stars Infusion of knowledge for the non-computer scientist 27 June 2013
By Ari Telias - Published on Amazon.com
Format:Paperback
This book was recommended to me by a member of a large company that starts with G and rhymes with noodle...
He explained that it "the best" for learning algorithmns. Being out of university for many years, and being a mechanical/software engineer vs a computer scientist, I needed something to refresh my memory and teach me what I did not know about algorithms.

So the good first:
1. I was able to read (almost, see point 4) the whole book (663 actual pages to read) in 5 nights (at 4-5 hours per night), so it is good if you need the knowledge in a rush.
2. Most of the knowledge is quite comprehensible. Specifically the basic concepts: Big-O notation, logarithmic behaviour, data structures, graph traversal.
3. The second part of the book is more like a reference, so if you have a problem to solve, you can go there and use that to direct you to the appropriate algorithms.
4. I did not read the "war stories", lack of time and lack of interest. Those are where the author tells us his brave battles against the algorithms.

The Bad:
1. Some topics are not explained clear enough: I could NOT understand the important sorts (Quick, Merge, Heap) just by reading the book. I tried as hard as I could, but only when I went to "the net", read it again, and actually coded the things myself + going line by line with the debugeer I finally understood them.
2. The code samples actually make function calls to functions that are not written there. You are left hangin' - what do we do now?
3. Trees: Splay trees, black red trees, AVL trees, B-Trees and tries - they are barely mentioned or given a few words. Not enough, in my humble opinion.
4. Weighted graph problems: Either the topic is for genius level only, or I am an idiot, or the explanation was horrible. Chose any two... Didn't understand anything.

Well, hope I didn't bore you too much. Good luck with your algorithms!

Cheers

Ari
15 of 17 people found the following review helpful
5.0 out of 5 stars Best Intro To Algorithms 26 October 2009
By Jeremiah LaRocco - Published on Amazon.com
Format:Hardcover|Verified Purchase
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.

Look for similar items by category