Pratiquer les mathématiques discrètes

Algorithms / Bipartite Matching Depth

Least You Need to Know: Bipartite Matching, Augmenting Paths, and Assignment Structure

Bipartite matching pairs vertices from two sides without reuse. The central progress idea is an **augmenting path**: alternating matched and unmatched edges that increases the matching size by one.

The least you need to know

Key notation

matching set of pairwise endpoint-disjoint edges
augmenting path alternating path starting and ending at unmatched vertices
maximum matching matching of largest possible size

Tiny worked example

  • Suppose left vertices are jobs and right vertices are workers.
  • A current matching might leave one job unmatched.
  • If an alternating path reaches an unmatched worker, flipping that path matches one more job overall.
  • That is the key local move behind augmenting-path algorithms.

Common mistakes

How to recognize this kind of problem

Start practice