Book description
Creating robust software requires the use of efficient algorithms, but programmers seldom think about them until a problem occurs. Algorithms in a Nutshell describes a large number of existing algorithms for solving a variety of problems, and helps you select and implement the right algorithm for your needs -- with just enough math to let you understand and analyze algorithm performance. With its focus on application, rather than theory, this book provides efficient code solutions in several programming languages that you can easily adapt to a specific project. Each major algorithm is presented in the style of a design pattern that includes information to help you understand why and when the algorithm is appropriate. With this book, you will:
Solve a particular coding problem or improve on the performance of an existing solution
Quickly locate algorithms that relate to the problems you want to solve, and determine why a particular algorithm is the right one to use
Get algorithmic solutions in C, C++, Java, and Ruby with implementation tips
Learn the expected performance of an algorithm, and the conditions it needs to perform at its best
Discover the impact that similar design decisions have on different algorithms
Learn advanced data structures to improve the efficiency of algorithms
With Algorithms in a Nutshell, you'll learn how to improve the performance of key algorithms essential for the success of your software applications.
Publisher resources
Table of contents
-
Algorithms in a Nutshell
- SPECIAL OFFER: Upgrade this ebook with O’Reilly
- A Note Regarding Supplemental Files
-
Preface
- Principle: Use Real Code, Not Pseudocode
- Principle: Separate the Algorithm from the Problem Being Solved
- Principle: Introduce Just Enough Mathematics
- Principle: Support Mathematical Analysis Empirically
- Audience
- Contents of This Book
- Conventions Used in This Book
- Using Code Examples
- Comments and Questions
- Safari® Books Online
- Acknowledgments
- References
- I. I
- II. II
-
III. III
- 10. When All Else Fails
-
11. Epilogue
- 11.1. Overview
- 11.2. Principle: Know Your Data
- 11.3. Principle: Decompose the Problem into Smaller Problems
- 11.4. Principle: Choose the Right Data Structure
- 11.5. Principle: Add Storage to Increase Performance
- 11.6. Principle: If No Solution Is Evident, Construct a Search
- 11.7. Principle: If No Solution Is Evident, Reduce Your Problem to Another Problem That Has a Solution
- 11.8. Principle: Writing Algorithms Is Hard—Testing Algorithms Is Harder
- IV. IV
- About the Authors
- Index
- About the Authors
- Colophon
- SPECIAL OFFER: Upgrade this ebook with O’Reilly
Product information
- Title: Algorithms in a Nutshell
- Author(s):
- Release date: October 2008
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9780596516246
You might also like
video
Grokking Algorithms Video Edition
"This book does the impossible: it makes math fun and easy!" Sander Rossel, COAS Software Systems …
book
Art of Computer Programming, The: Volume 1: Fundamental Algorithms
&>The bible of all fundamental algorithms and the work that taught many of today's software developers …
book
Graph Algorithms
Learn how graph algorithms can help you leverage relationships within your data to develop intelligent solutions …
video
Algorithms in Motion
"Good and simple to understand introduction to algorithms." Boris Vasile, Team Lead, Garmin Cluj Algorithms - …