Practice Discrete Math

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

Next recommended lesson

Continue through this topic with Least You Need to Know: Set Bits, Powers of Two, and Lowest-Bit Tricks.

Least You Need to Know: Set Bits, Powers of Two, and Lowest-Bit Tricks

Related lessons

Keep going with nearby lessons in the same topic.

More ways to explore

Start practice