Efficient algorithms for finding maximum matching in graphs

  title={Efficient algorithms for finding maximum matching in graphs},
  author={Zvi Galil},
  journal={ACM Comput. Surv.},
  • Z. Galil
  • Published 1 March 1986
  • Computer Science, Mathematics
  • ACM Comput. Surv.
This paper surveys the techniques used for designing the most efficient algorithms for finding a maximum cardinality or weighted matching in (general or bipartite) graphs. It also lists some open problems concerning possible improvements in existing algorithms and the existence of fast parallel algorithms for these problems. 

Figures from this paper

An efficient algorithm is presented which takes O(n²) time and O( n+m) space for a trapezoid graph, where n and m represent the number of vertices and theNumber of edges of the graph.
A Self-Stabilizing Algorithm for Maximum Matching in Trees
This paper presents a distributed, self-stabilizing algorithm for constructing a maximum matching in trees that does not require any initialization and is tolerant to transient faults.
Incremental assignment problem
Finding the Maximum Matching in a Bipartite Graph
A matching M of the graph G is an edge set such that no two edges of M share their endpoints. For a bipartite graph G = (V, E) maximum matching are matching whose cardinalities are maximum among all
A New Approach to Maximum Matching in General Graphs
A straightforward algorithm for maximum matching in general graphs of time complexity O(√nm) is obtained, where n is the number of nodes and m is thenumber of edges in the graph.
Fast Parallel Approximation Algorithms for Maximum Weighted Matching Problem
Two parallel approximation algorithms for matching a matching of maximum weight in a given edge-weighted graph using the total order of the weights to deal with unbounded weights on a PRAM are presented.
in Interval Graphs
A new parallel maximum matching algorith,ms in interval graphs by exploiting the characteristics of interval graphs is developed, which requires O(log2 w+(n log n)/w) time and O(nv2 + n) operations on the CREW PRAM.
New Approximation Results on Graph Matching and related Problems
This work proposes an approximate maximum cardinality matching algorithm that runs in O(e+n) sequential time yielding a matching of size at least e/n−1, improving the bound known before.
The symmetric travelling salesman problem I. New fast lower bounds for the problem of optimal 2-matching
To solve the symmetric travelling salesman problem, a lower bound is suggested—the solution of an optimal 2-matching problem that is solved not completely, but up to obtaining new stable lower bounds.
Approximation algorithms for covering a graph by vertex-disjoint paths of maximum total weight
This work considers the problem of covering a weighted graph G = (V, E) by a set of vertex-disjoint paths, such that the total weight of these paths is maximized, and develops an algorithm for covering undirected graphs.


An n5/2 Algorithm for Maximum Matchings in Bipartite Graphs
The present paper shows how to construct a maximum matching in a bipartite graph with n vertices and m edges in a number of computation steps proportional to $(m + n)\sqrt n $.
An O (N2.5) algorithm for maximum matching in general graphs
  • S. Even, O. Kariv
  • Computer Science
    16th Annual Symposium on Foundations of Computer Science (sfcs 1975)
  • 1975
This work presents a new efficient algorithm for finding a maximum matching in an arbitrary graph that is O(m√n¿log n) where n, m are the numbers of the vertices and the edges in the graph.
Priority queues with variable priority and an O(EV log V) algorithm for finding a maximal weighted matching in general graphs
  • Z. Galil, S. Micali, H. Gabow
  • Mathematics, Computer Science
    23rd Annual Symposium on Foundations of Computer Science (sfcs 1982)
  • 1982
Two generalized types of a priority queue are defined by allowing some forms of changing the priorities of the elements in the queue to be implemented efficiently and used to construct an O(log n) algorithm for finding a maximal weighted matching in general graphs.
An efficient reduction technique for degree-constrained subgraph and bidirected network flow problems
Efficient algorithms are given for the bidirected network flow problem and the degree-constrained subgraph problem, which use a reduction technique that solves one problem instance by reducing to a number of problems.
Matching is as easy as matrix inversion
A new algorithm for finding a maximum matching in a general graph with special feature is that its only computationally non-trivial step is the inversion of a single integer matrix, the isolating lemma.
A scaling algorithm for weighted matching on general graphs
  • H. Gabow
  • Computer Science
    26th Annual Symposium on Foundations of Computer Science (sfcs 1985)
  • 1985
An algorithm for maximum matching on general graphs with integral edge weights, running in time O(n3/4m lg N), where n, m and N are the number of vertices, number of edges, and largest edge weight magnitude, respectively.
Sensitivity analysis of optimal matchings
After stating the weighted, perfect matching problem and briefly describing Edmonds' algorithm, certain postoptimality procedures are described. These procedures aid in reoptimizing related matching
Efficient dual simplex algorithms for the assignment problem
  • D. Goldfarb
  • Computer Science, Mathematics
    Math. Program.
  • 1986
Efficient algorithms based upon Balinski's signature method are described for solving then × n assignment problem and are shown to have computational bounds of O(n3) space and O(mn + n2 logn) time in the worst case.
Finding optimum branchings
  • R. Tarjan
  • Mathematics, Computer Science
  • 1977
An implementation of the algorithm which runs in 0(m logn) time if the problem graph has n vertices and m edges is given, and a modification for dense graphs gives a running time of 0(n2).