did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

We're the #1 textbook rental company. Let us show you why.

9780201361216

Algorithms in Java, Part 5 Graph Algorithms

by
  • ISBN13:

    9780201361216

  • ISBN10:

    0201361213

  • Edition: 3rd
  • Format: Paperback
  • Copyright: 2003-07-15
  • Publisher: Addison-Wesley Professional
  • View Upgraded Edition
  • Purchase Benefits
  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $59.99 Save up to $14.10
  • Digital
    $45.89
    Add to Cart

    DURATION
    PRICE

Supplemental Materials

What is included with this book?

Summary

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. Michael Schidlowsky and Sedgewick have developed concise new Java implementations that both express the methods in a natural and direct manner and also can be used in real applications.Algorithms in Java, 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. The natural match between Java classes and abstract data type (ADT) implementations makes the code more broadly useful and relevant for the modern object-oriented programming environment.The Web site for this book ( www.cs.princeton.edu/~rs/ ) provides additional source code for programmers along with a variety of academic support materials for educators.Coverage includes: A complete overview of graph properties and types Diagraphs and DAGs Minimum spanning trees Shortest paths Network flows Diagrams, sample Java code, and detailed algorithm descriptions A landmark revision, Algorithms in Java, 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. 0201361213B06272003

Author Biography

Robert Sedgewick is a Professor of Computer Science at Princeton University. He is a director of Adobe Systems and has served on the research staffs at Xerox PARC, the Institute for Defense Analyses, and INRIA Michael Schidlowsky, a Princeton graduate, is an independent software consultant specializing in object-oriented programming. Most recently he was the CTO of Teaching That Works and the founder of xSense Corporation

Table of Contents

Graph Algorithms
Graph Properties and Typesp. 3
Glossaryp. 7
Graph ADTp. 16
Adjacency-Matrix Representationp. 25
Adjacency-Lists Representationp. 31
Variations, Extensions, and Costsp. 36
Graph Generatorsp. 46
Simple, Euler, and Hamilton Pathsp. 57
Graph-Processing Problemsp. 70
Graph Searchp. 81
Exploring a Mazep. 82
Depth-First Searchp. 87
Graph-Search ADT Methodsp. 91
Properties of DFS Forestsp. 97
DFS Algorithmsp. 105
Separability and Biconnectivityp. 112
Breadth-First Searchp. 121
Generalized Graph Searchp. 131
Analysis of Graph Algorithmsp. 140
Digraphs and DAGsp. 149
Glossary and Rules of the Gamep. 152
Anatomy of DFS in Digraphsp. 160
Reachability and Transitive Closurep. 169
Equivalence Relations and Partial Ordersp. 182
DAGsp. 186
Topological Sortingp. 191
Reachability in DAGsp. 202
Strong Components in Digraphsp. 205
Transitive Closure Revisitedp. 217
Perspectivep. 222
Minimum Spanning Treesp. 227
Representationsp. 230
Underlying Principles of MST Algorithmsp. 240
Prim's Algorithm and Priority-First Searchp. 247
Kruskal's Algorithmp. 258
Boruvka's Algorithmp. 264
Comparisons and Improvementsp. 268
Euclidean MSTp. 274
Shortest Pathsp. 277
Underlying Principlesp. 285
Dijkstra's Algorithmp. 293
All-Pairs Shortest Pathsp. 304
Shortest Paths in Acyclic Networksp. 313
Euclidean Networksp. 322
Reductionp. 328
Negative Weightsp. 345
Perspectivep. 363
Network Flowp. 367
Flow Networksp. 373
Augmenting-Path Maxflow Algorithmsp. 382
Preflow-Push Maxflow Algorithmsp. 410
Maxflow Reductionsp. 425
Mincost Flowsp. 443
Network Simplex Algorithmp. 453
Mincost-Flow Reductionsp. 472
Perspectivep. 482
References for Part Fivep. 487
Indexp. 489
Table of Contents provided by Ingram. All Rights Reserved.

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Excerpts

Graphs and graph algorithms are pervasive in modern computing applications. This book describes the most important known methods for solving the graph-processing problems that arise in practice. Its primary aim is to make these methods and the basic principles behind them accessible to the growing number of people in need of knowing them. The material is developed from first principles, starting with basic information and working through classical methods up through modern techniques that are still under development. Carefully chosen examples, detailed figures, and complete implementations supplement thorough descriptions of algorithms and applications. Algorithms This book is the second of three volumes that are intended to survey the most important computer algorithms in use today. The first volume (Parts 1-4) covers fundamental concepts (Part 1), data structures (Part 2), sorting algorithms (Part 3), and searching algorithms (Part 4); this volume (Part 5) covers graphs and graph algorithms; and the (yet to be published) third volume (Parts 6-8) covers strings (Part 6), computational geometry (Part 7), and advanced algorithms and applications (Part 8). The books are useful as texts early in the computer science curriculum, after students have acquired basic programming skills and familiarity with computer systems, but before they have taken specialized courses in advanced areas of computer science or computer applications. The books also are useful for self-study or as a reference for people engaged in the development of computer systems or applications programs because they contain implementations of useful algorithms and detailed information on these algorithms' performance characteristics. The broad perspective taken makes the series an appropriate introduction to the field. Together the three volumes comprise theThird Editionof a book that has been widely used by students and programmers around the world for many years. I have completely rewritten the text for this edition, and I have added thousands of new exercises, hundreds of new figures, dozens of new programs, and detailed commentary on all the figures and programs. This new material provides both coverage of new topics and fuller explanations of many of the classic algorithms. A new emphasis on abstract data types throughout the books makes the programs more broadly useful and relevant in modern object-oriented programming environments. People who have read previous editions will find a wealth of new information throughout; all readers will find a wealth of pedagogical material that provides effective access to essential concepts. These books are not just for programmers and computer-science students. Nearly everyone who uses a computer wants it to run faster or to solve larger problems. The algorithms that we consider represent a body of knowledge developed during the last 50 years that has become indispensable in the efficient use of the computer for a broad variety of applications. From N-body simulation problems in physics to genetic-sequencing problems in molecular biology, the basic methods described here have become essential in scientific research; and from database systems to Internet search engines, they have become essential parts of modern software systems. As the scope of computer applications becomes more widespread, so grows the impact of basic algorithms, particularly the fundamental graph algorithms covered in this volume. The goal of this book is to serve as a resource so that students and professionals can know and make intelligent use of graph algorithms as the need arises in whatever computer application they might undertake. Scope This book,Algorithms in C, Third Edition, Part 5: Graph Algorithms,contains six chapters that cover graph properties and types, graph search, directed graphs, minimal spanning

Rewards Program