Skip to main content

Maximum Matching

  • Living reference work entry
  • First Online:
Encyclopedia of Algorithms
  • 587 Accesses

Years and Authors of Summarized Original Work

2004; Mucha, Sankowski

Problem Definition

Let G = (V, E) be an undirected graph, and let \(n =\vert V \vert\), \(m =\vert E\vert\). A matching in G is a subset M ⊆ E, such that no two edges of M have a common endpoint. A perfect matching is a matching of cardinality n∕2. The most basic matching related problems are finding a maximum matching (i.e., a matching of maximum size) and, as a special case, finding a perfect matching if one exists. One can also consider the case where a weight function w : E → R is given and the problem is to find a maximum weight matching.

The maximum matching and maximum weight matching are two of the most fundamental algorithmic graph problems. They have also played a major role in the development of combinatorial optimization and algorithmics. An excellent account of this can be found in a classic monograph [11] by Lovász and Plummer devoted entirely to matching problems. A more up-to-date but also more...

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Recommended Reading

  1. Bunch J, Hopcroft J (1974) Triangular factorization and inversion by fast matrix multiplication. Math Comput 125:231–236

    Article  MathSciNet  Google Scholar 

  2. Coppersmith D, Winograd S (1987) Matrix multiplication via arithmetic progressions. In: Proceedings of the 19th annual ACM conference on theory of computing (STOC), New York, pp 1–6

    Google Scholar 

  3. Edmonds J (1965) Paths, trees, and flowers. Can J Math 17:449–467

    Article  MATH  MathSciNet  Google Scholar 

  4. Gabow HN, Tarjan RE (1991) Faster scaling algorithms for general graph matching problems. J ACM 38(4):815–853

    Article  MATH  MathSciNet  Google Scholar 

  5. Harvey N (2006) Algebraic structures and algorithms for matching and matroid problems. In: Proceedings of the 47th annual IEEE symposium on foundations of computer science (FOCS), Berkeley

    Google Scholar 

  6. Harvey JAN (2009) Algebraic algorithms for matching and matroid problems. SIAM J Comput 39(2):679–702

    Article  MATH  MathSciNet  Google Scholar 

  7. Hopcroft JE, Karp RM (1973) An O(n 5∕2) Algorithm for maximum matchings in bipartite graphs. SIAM J Comput 2:225–231

    Article  MATH  MathSciNet  Google Scholar 

  8. Karloff H (1986) A Las Vegas RNC algorithm for maximum matching. Combinatorica 6:387–391

    Article  MATH  MathSciNet  Google Scholar 

  9. Karp R, Upfal E, Widgerson A (1986) Constructing a perfect matching is in random NC. Combinatorica 6:35–48

    Article  MATH  MathSciNet  Google Scholar 

  10. Lovász L (1979) On determinants, matchings and random algorithms. In: Budach L (ed) Fundamentals of computation theory (FCT’79), Wendisch-Rietz, pp 565–574. Akademie-Verlag, Berlin

    Google Scholar 

  11. Lovász L, Plummer MD (1986) Matching theory. Akadémiai Kiadó – North Holland, Budapest

    MATH  Google Scholar 

  12. Micali S, Vazirani VV (1980) An \(O(\sqrt{V E})\) algorithm for finding maximum matching in general graphs. In: Proceedings of the 21st annual IEEE symposium on foundations of computer science (FOCS), Syracuse, pp 17–27

    Google Scholar 

  13. Mucha M, Sankowski P (2004) Maximum matchings via Gaussian elimination. In: Proceedings of the 45th annual IEEE symposium on foundations of computer science (FOCS), Rome, pp 248–255

    Google Scholar 

  14. Mucha M, Sankowski P (2006) Maximum matchings in planar graphs via Gaussian elimination. Algorithmica 45:3–20

    Article  MATH  MathSciNet  Google Scholar 

  15. Mulmuley K, Vazirani UV, Vazirani VV (1987) Matching is as easy as matrix inversion. In: Proceedings of the 19th annual ACM conference on theory of computing, New York, pp 345–354. ACM

    Google Scholar 

  16. Rabin MO, Vazirani VV (1989) Maximum matchings in general graphs through randomization. J Algorithms 10:557–567

    Article  MATH  MathSciNet  Google Scholar 

  17. Sankowski P (2005) Processor efficient parallel matching. In: Proceeding of the 17th ACM symposium on parallelism in algorithms and architectures (SPAA), Las Vegas, pp 165–170

    Google Scholar 

  18. Sankowski P (2006) Weighted bipartite matching in matrix multiplication time. In: Proceedings of the 33rd international colloquium on automata, languages and programming, Venice, pp 274–285

    Google Scholar 

  19. Schrijver A (2003) Combinatorial optimization: polyhedra and efficiency. Springer, Berlin/Heidelberg

    Google Scholar 

  20. Vassilevska Williams V (2012) Multiplying matrices faster than Coppersmith-Winograd. In: Proceedings of the 44th symposium on theory of computing conference (STOC), New York, pp 887–898

    Google Scholar 

  21. Vazirani VV (1994) A theory of alternating paths and blossoms for proving correctness of the \(O(\sqrt{V E})\) maximum matching algorithm. Combinatorica 14(1):71–109

    Article  MATH  MathSciNet  Google Scholar 

  22. Yuster R, Zwick U (2007) Maximum matching in graphs with an excluded minor. In: Proceedings of the ACM-SIAM symposium on discrete algorithms (SODA), New Orleans

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Marcin Mucha .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer Science+Business Media New York

About this entry

Cite this entry

Mucha, M. (2015). Maximum Matching. In: Kao, MY. (eds) Encyclopedia of Algorithms. Springer, Boston, MA. https://doi.org/10.1007/978-3-642-27848-8_225-2

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-27848-8_225-2

  • Received:

  • Accepted:

  • Published:

  • Publisher Name: Springer, Boston, MA

  • Online ISBN: 978-3-642-27848-8

  • eBook Packages: Springer Reference Computer SciencesReference Module Computer Science and Engineering

Publish with us

Policies and ethics