Connected Components in Linear Work and Near-Optimal Time
Abstract
Computing the connected components of a graph is a fundamental problem in algorithmic graph theory. A major question in this area is whether we can compute connected components in o( n) parallel time. Recent works showed an affirmative answer in the Massively Parallel Computation (MPC) model for a wide class of graphs. Specifically, Behnezhad et al. (FOCS'19) showed that connected components can be computed in O( d + n) rounds in the MPC model. More recently, Liu et al. (SPAA'20) showed that the same result can be achieved in the standard PRAM model but their result incurs ((m+n) · ( d + n)) work which is sub-optimal. In this paper, we show that for graphs that contain well-connected components, we can compute connected components on a PRAM in sub-logarithmic parallel time with optimal, i.e., O(m+n) total work. Specifically, our algorithm achieves O((1/λ) + n) parallel time with high probability, where λ is the minimum spectral gap of any connected component in the input graph. The algorithm requires no prior knowledge on λ. Additionally, based on the 2-Cycle Conjecture we provide a time lower bound of ((1/λ)) for solving connected components on a PRAM with O(m+n) total memory when λ (1/ n)c, giving conditional optimality to the running time of our algorithm as a parameter of λ.
Turn this paper into a full lesson
ArcXiv compiles a staged curriculum from this paper: 8-12 lessons across beginner → advanced, synthesised section guides, visuals, flashcards, a quiz, exercises, and on-demand deep dives per section. Grounded in the abstract, never invented.