Constructing a perfect matching is in random NC


We show that the problem of constructing a perfect matching in a graph is in the complexity class Random NC; i.e., the problem is solvable in polylog time by a randomized parallel algorithm using a polynomial-bounded number of processors. We also show that several related problems lie in Random NC. These include:

  1. (i)

    Constructing a perfect matching of maximum weight in a graph whose edge weights are given in unary notation;

  2. (ii)

    Constructing a maximum-cardinality matching;

  3. (iii)

    Constructing a matching covering a set of vertices of maximum weight in a graph whose vertex weights are given in binary;

  4. (iv)

    Constructing a maximums-t flow in a directed graph whose edge weights are given in unary.

This is a preview of subscription content, access via your institution.


  1. [1]

    D. Angluin andL. G. Valiant, Fast probabilistic algorithms for Hamiltonian circuits and matchings.J. of Comp. Syst. Sci. 18 (1979), 155–193.

    MATH  Article  MathSciNet  Google Scholar 

  2. [2]

    A. Borodin, S. A. Cook andN. Pippenger, Parallel computation for well-endowed rings and space bounded probabilistic machines.Information and Control 58 (1983), 113–136.

    MATH  Article  MathSciNet  Google Scholar 

  3. [3]

    A. Borodin, J. von zur Gathen andJ. Hopcroft, Fast parallel matrix and GCD computations.Proc. 23 STOC (1982), 65–71.

    Google Scholar 

  4. [4]

    S. A. Cook, An overview of computation complexity.CACM 26 (1983), 400–408.

    MATH  Google Scholar 

  5. [5]

    J. Edmonds, Systems of distinct representatives and linear algebra.J. of Res. Nat. Bureau of Standards,71 A (1967), 241–245.

    MathSciNet  Google Scholar 

  6. [6]

    J. Edmonds andR. M. Karp, Theoretical improvements in algorithmic efficiency for network flow problems.J. of ACM 19 (1972), 248–264.

    MATH  Article  Google Scholar 

  7. [7]

    L. M. Goldschlager, R. A. Shaw andJ. Staples, The maximum flow problem is logspace complete for P.Theoretical Computer Science 21 (1982), 105–111.

    MATH  Article  MathSciNet  Google Scholar 

  8. [8]

    H. J. Karloff, A Las Vegas RNC algorithm for maximum matchingCombinatorica, to appear.

  9. [9]

    R. M. Karp, E. Upfal andA. Wigderson, Are search and decision problems computationally equivalent?STOC 1985.

  10. [10]

    D. Kozen, U. V. Vazirani andV. V. Vazirani, The two-processors scheduling problem is in R-NC.STOC 1985.

  11. [11]

    L. Lovász, Determinants, matchings and random algorithms,in: Fundamentals of Computation Theory, FCT’79. (ed. L. Budach), Akademie-Verlag Berlin 1979, pp 565–574.

  12. [12]

    M. O. Rabin andV. V. Vazirani, Maximum matchings in general graphs through randomization, TR-15-84,Harvard University Center for Research in Computing Technology, 1984.

  13. [13]

    J. T. Schwartz, Fast probabilistic algorithms for verification of polynomial identities.J. of ACM,27 (1980), 701–717.

    MATH  Article  Google Scholar 

  14. [14]

    E. Shamir andE. Upfal,N-processors graphs distributively achieve perfect matching inO(log2 N) beats.Proceeding of the First ACM SIGACT-SIGMOD Symp. on Principles of Distributed Computing. Ottawa, 1982, 238–241.

  15. [15]

    W. T. Tutte, The factors of graphs.Canad. J. Math. 4 (1952), 314–328.

    MATH  MathSciNet  Google Scholar 

  16. [16]

    D. J. A. Welsh,Matroid Theory. Academic Press (1976).

Download references

Author information



Additional information

Research supported by NSF Grant # DCR-8411954.

Research supported by a Weizmann Post-Doctoral fellowship, and by DARPA Grant N00039-83-C-1036.

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Karp, R.M., Upfal, E. & Wigderson, A. Constructing a perfect matching is in random NC. Combinatorica 6, 35–48 (1986).

Download citation

AMS subject classification (1980)

  • 68 E 10