I/O efficient algorithms for the minimum cut problem on unweighted undirected graphs - Bhushan, Alka; Sajith, G. (Theoretical computer science, 2015)
The problem of finding the minimum cut of an undirected unweighted graph is studied on the external memory model. First, a lower bound of Ω((E/V)Sort(V)) on the number of I/Os is shown for the problem, where V is the number of vertices and E is the number of edges. Then the following are presented, (1) a deterministic minimum cut algorithm that usesO(min⁡{c7(log3+ϵ⁡E)(MST(V,E)),c(log⁡E)(MST(V,E))+(V/M)Sort(V)}) I/Os; here ϵ>0 is a small constant, MST(V,E) is the number of I/Os needed to compute a minimum spanning tree of the graph, and c is the value of the minimum cut. The algorithm performs better on dense graphs than the algorithm of [1], which requires O(E+c2Vlog⁡(V/c)) I/Os, when executed on the external memory model. For a δ-fat graph (for δ>0, the maximum tree packing of the graph is at least (1+δ)c/2), our algorithm computes a minimum cut in O(c(log⁡E)MST(V,E)) I/Os. (2) A randomized algorithm that computes minimum cut with high probability in O(c(log⁡E)⋅MST(V,E)+Sort(E)log2⁡V+VBSort(V)log⁡V) I/Os. (3) A (2+ϵ)-minimum cut algorithm that requires O((E/V)MST(V,E)) I/Os. •We study the minimum cut problem for undirected unweighted graphs.•Its complexity on the external memory model is investigated.•A lower bound is proved.•A deterministic algorithm is presented.•A randomized algorithm that uses fewer I/Os is presented.