Synopses & Reviews
Once again, Robert Sedgewick provides a current and comprehensive introduction to important algorithms. The focus this time is on graph algorithms, which are increasingly critical for a wide range of applications, such as network connectivity, circuit design, scheduling, transaction processing, and resource allocation. In this book, Sedgewick offers the same successful blend of theory and practice that has made his work popular with programmers for many years. Christopher van Wyk and Sedgewick have developed concise new C++ implementations that both express the methods in a natural and direct manner and also can be used in real applications.
Algorithms in C++, Third Edition, Part 5: Graph Algorithms is the second book in Sedgewick's thoroughly revised and rewritten series. The first book, Parts 1-4, addresses fundamental algorithms, data structures, sorting, and searching. A forthcoming third book will focus on strings, geometry, and a range of advanced algorithms. Each book's expanded coverage features new algorithms and implementations, enhanced descriptions and diagrams, and a wealth of new exercises for polishing skills. A focus on abstract data types makes the programs more broadly useful and relevant for the modern object-oriented programming environment.
- A complete overview of graph properties and types
- Diagraphs and DAGs
- Minimum spanning trees
- Shortest paths
- Network flows
- Diagrams, sample C++ code, and detailed algorithm descriptions
The Web site for this book (http://www.cs.princeton.edu/~rs/) provides additional source code for programmers along with a wide range of academic support materials for educators.
A landmark revision, Algorithms in C++, Third Edition, Part 5 provides a complete tool set for programmers to implement, debug, and use graph algorithms across a wide range of computer applications.
Software developers and computer scientists have eagerly awaited this comprehensive revision of Robert Sedgewick's landmark texts on algorithms for C++. Sedgewick has completely revamped all five sections, illuminating today's best algorithms for an exceptionally wide range of tasks. This shrink-wrapped package brings together Algorithms in C++, Third Edition, Parts 1-4
and his new Algorithms in C++, Third Edition, Part 5
, at a special discounted price. Together, these books are the most definitive, up-to-date, and practical algorithms resource available. The first book introduces fundamental concepts associated with algorithms, then covers data structures, sorting, and searching. The second book focuses entirely on graphing algorithms, which are critical for a wide range of applications, including network connectivity, circuit design, scheduling, transaction processing, and resource allocation. Sedgewick focuses on practical applications, giving readers all the information, diagrams, and real (not pseudo-) code they need to confidently implement, debug, and use the algorithms he presents. Together these books present nearly 2,000 new exercises, hundreds of new figures, and dozens of new programs.
About the Author
Robert Sedgewick is the William O. Baker Professor of Computer Science at Princeton University. He is a Director of Adobe Systems and has served on the research staffs at Xerox PARC, IDA, and INRIA. He earned his Ph.D from Stanford University under Donald E. Knuth.
Table of Contents
17. Graph Properties and Types.
Variations, Extensions, and Costs.
Simple, Euler, and Hamilton Paths.
18. Graph Search.
Exploring a Maze.
Graph-Search ADT Functions.
Properties of DFS Forests.
Separability and Biconnectivity.
Generalized Graph Search.
Analysis of Graph Algorithms.
19. Digraphs and DAGs.
Glossary and Rules of the Game.
Anatomy of DFS in Digraphs.
Reachability and Transitive Closure.
Equivalence Relations and Partial Orders.
Reachability in DAGs.
Strong Components in Digraphs.
Transitive Closure Revisited.
20. Minimum Spanning Trees.
Underlying Principles of MST Algorithms.
Prim's Algorithm and Priority-First Search.
Comparisons and Improvements.
21. Shortest Paths.
All-Pairs Shortest Paths.
Shortest Paths in Acyclic Networks.
22. Network Flow.
Augmenting-Path Maxflow Algorithms.
Preflow-Push Maxflow Algorithms.
Network Simplex Algorithm.
References for Part Five.