An O(v|v| c |E|) algoithm for finding maximum matching in general graphs
SFCS '80 Proceedings of the 21st Annual Symposium on Foundations of Computer Science
A model for minimizing active processor time
ESA'12 Proceedings of the 20th Annual European conference on Algorithms
Hi-index | 0.00 |
A 2-matching in an undirected graph G = (VG,EG) is a function x: EG → {0, 1, 2} such that for each node v ∈ VG the sum of values x(e) on all edges e incident to v does not exceed 2. The size of x is the sum Σe x(e). If {e ∈ EG | x(e) ≠ 0} contains no triangles then x is called triangle-free. Cornuéjols and Pulleyblank devised a combinatorial O(mn)-algorithm that finds a triangle free 2-matching of maximum size (hereinafter n := |VG|, m := |EG|) and also established a min-max theorem. We claim that this approach is, in fact, superfluous by demonstrating how their results may be obtained directly from the Edmonds-Gallai decomposition. Applying the algorithm of Micali and Vazirani we are able to find a maximum triangle-free 2-matching in O(m√n)-time. Also we give a short self-contained algorithmic proof of the min-max theorem. Next, we consider the case of regular graphs. It is well-known that every regular graph admits a perfect 2-matching. One can easily strengthen this result and prove that every d-regular graph (for d ≥ 3) contains a perfect triangle-free 2-matching. We give the following algorithms for finding a perfect triangle-free 2-matching in a d-regular graph: an O(n)- algorithm for d = 3, an O(m + n3/2)-algorithm for d = 2k (k ≥ 2), and an O(n2)-algorithm for d = 2k + 1 (k ≥ 2).