Book description
Creating robust software requires the use of efficient algorithms, but programmers seldom think about them until a problem occurs. This updated edition of 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
Publisher resources
Table of contents
 Preface to the Second Edition
 1. Thinking in Algorithms
 2. The Mathematics of Algorithms
 3. Algorithm Building Blocks
 4. Sorting Algorithms
 5. Searching
 6. Graph Algorithms
 7. Path Finding in AI
 8. Network Flow Algorithms
 9. Computational Geometry
 10. Spatial Tree Structures
 11. Emerging Algorithm Categories

12. Epilogue: Principles of Algorithms
 Know Your Data
 Decompose a Problem into Smaller Problems
 Choose the Right Data Structure
 Make the Space versus Time TradeOff
 Construct a Search
 Reduce Your Problem to Another Problem
 Writing Algorithms Is Hard—Testing Algorithms Is Harder
 Accept Approximate Solutions When Possible
 Add Parallelism to Increase Performance
 A. Benchmarking
 Index
Product information
 Title: Algorithms in a Nutshell, 2nd Edition
 Author(s):
 Release date: December 2015
 Publisher(s): O'Reilly Media, Inc.
 ISBN: 9781491948927
You might also like
book
Mythical ManMonth, The: Essays on Software Engineering, Anniversary Edition, 2nd Edition
Few books on software project management have been as influential and timeless as The Mythical ManMonth. …
book
Modern Software Engineering: Doing What Works to Build Better Software Faster
Improve Your Creativity, Effectiveness, and Ultimately, Your Code In Modern Software Engineering, continuous delivery pioneer David …
book
Designing DataIntensive Applications
Data is at the center of many challenges in system design today. Difficult issues need to …
book
How Linux Works, 3rd Edition
Unlike some operating systems, Linux doesn’t try to hide the important bits from you—it gives you …