We significantly improve known time bounds for solving the minimum cut problem on undirected graphs. We use a "semiduality" between minimum cuts and maximum spanning tree packings combined with our previously developed random sampling techniques. We give a randomized (Monte Carlo) algorithm that finds a minimum cut in an m-edge, n-vertex graph with high probability in O(m log 3 n) time. We also give a simpler randomized algorithm that finds all minimum cuts with high probability in O(n 2 log n) time. This variant has an optimal ᏺᏯ parallelization. Both variants improve on the previous best time bound of O(n 2 log 3 n). Other applications of the tree-packing approach are new, nearly tight bounds on the number of near-minimum cuts a graph may have and a new data structure for representing them in a space-efficient manner.
(II) In 1996, Karger REF provided the first algorithm for minimum cut that has a near-linear complexity in the number of edges; it runs in O(m log 3 n) time.
Minimum cuts in near-linear time
JACM
Computer Science Mathematics