Practice Discrete Math

Algorithms / Flow Matching Lite

Least You Need to Know: Flow and Matching Lite for Assignment-Style Problems

Maximum flow and bipartite matching give a powerful modeling layer for assignment, routing, and disjointness problems. The main idea is to convert local compatibility and capacity limits into edges and capacities so that feasible collections of pairings correspond to integral flow.

The least you need to know

Key notation

capacity maximum amount of flow allowed on an edge
matching set of disjoint compatible pairs
max flow largest feasible amount sent from source to sink

Tiny worked example

  • Suppose interns must be assigned to projects they are qualified for.
  • Put interns on the left and projects on the right.
  • Add an edge for each allowed assignment.
  • Connect source to each intern and each project to sink with capacity 1.
  • A maximum matching then finds the largest compatible assignment set.

Common mistakes

How to recognize this kind of problem

Start practice