Graph Theory37 sections · 1633 units
Open in Course

Decision Framework

How to choose the right algorithm.

Ask yourself these questions:

1.1. What are the objects? Vertices could be states, people, positions, or abstract entities.

2.2. What are the relationships? Edges could be transitions, connections, dependencies.

3.3. What am I optimizing? Shortest path, maximum flow, minimum cut, or something else?

4.4. What constraints exist? Capacities suggest flow.

Matching suggests bipartite. Ordering suggests topological sort.

5.5. Is there a known pattern? "Visit every edge once" = Euler. "Visit every vertex once" = Hamiltonian.

With practice, you'll recognize patterns quickly.