17.1 Introducing Graphs
17.1.1 Understanding Graphs
17.1.2 Representations
17.1.2.1 Links by Name
17.1.2.2 Links by Indices
17.1.2.3 A List of Edges
17.1.2.4 Abstracting Representations
17.1.3 Measuring Complexity for Graphs
17.2 Basic Graph Traversals
17.2.1 Reachability
17.2.1.1 Simple Recursion
17.2.1.2 Cleaning up the Loop
17.2.1.3 Traversal with Memory
17.2.1.4 A Better Interface
17.2.2 Depth- and Breadth-First Traversals
17.3 Graphs With Weighted Edges
17.4 Shortest (or Lightest) Paths
17.5 Moravian Spanning Trees
17.5.1 The Problem
17.5.2 A Greedy Solution
17.5.3 Another Greedy Solution
17.5.4 A Third Solution
17.5.5 Checking Component Connectedness