Abstract
We present a linear expected time algorithm for finding maximum cardinality matchings in sparse random graphs. This is optimal and improves on previous results by a logarithmic factor.
Highlights
A matching M in a graph G = (V, E) is a set of vertex disjoint edges
We have shown that a maximum matching can be found in O(n) expected time if the average degree is a sufficiently large constant
It is easy to extend this to the case where the average degree grows with n
Summary
One natural approach to finding a maximum matching is to use a simple algorithm to find an initial matching and augment it This will not improve execution time in the worst-case, but as we will show, it can be used to obtain an O(n) expected time algorithm for graphs with constant average degree (O(m) in general). For a simple algorithm we go to the seminal paper of Karp and Sipser [6] They describe a simple greedy algorithm and show that whp it will in linear time produce a matching that is within o(n) of the maximum. In this paper we show that whp we can take the output of the Karp-Sipser algorithm and augment it in o(n) time to find a maximum cardinality matching. The expectation here is over the choice of input and the random choices made by the algorithm
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have