Learning objectives
After this class, you should be able to:
- Define the following terms: bipartite graph, matching, maximal matching, and maximum matching.
- Given a bipartite graph, formulate it as a network flow problem, and use the Edmonds-Karp algorithm to find a maximum matching.
- Prove correctness of the algorithm we studied to determine a maximum matching in a bipartite graph, and show that its time complexity is
O(VE)
for a bipartite graph G = (V,E)
.
Reading assignment
- CLR: Section 26.3.
- CLR: Chapter 35, page 1022 and page 1024.
Exercises and review questions
- Questions on current lecture's material
- Give an example of a bipartitite graph and a maximal matching for it, such that the maximal matching is not a maximum matching.
- CLR: Exercise 26.3-1.
- CLR: Exercise 26.3-2.
- CLR: Exercise 26.3-3.
- Questions on next lecture's material
- Suppose that an approximation algorithm for some maximization problem yields a solution that is at least as large as
0.8 OPT
, where OPT
is the value of the optimal solution. Give a good lower bound on the approximation ratio of this algorithm.
- Find a vertex cover of size three for the graph in figure 22.1 (page 528).
Last modified: 21 May 2004