A Divide-and-conquer Algorithm for Identifying Strongly Connected Components ?

Strongly connected components of a directed graph can be found in an optimal linear time, by algorithms based on depth first search. Unfortunately, depth first search is difficult to parallelize. We describe two divide--and--conquer algorithms for this problem that have significantly greater potential for parallelization. We show the expected serial runtime of our simpler algorithm to be O(m log n), for a graph with n vertices and m edges. We then show that the second algorithm has O(mlog n) worst--case complexity.

[1]  R. K. Shyamasundar,et al.  Introduction to algorithms , 1996 .

[2]  John H. Reif,et al.  Depth-First Search is Inherently Sequential , 1985, Inf. Process. Lett..

[3]  M. R. Dorr,et al.  Concurrent Source Iteration in the Solution of Three-Dimensional Multigroup Discrete Ordinates Neutr , 1995 .

[4]  Alok Aggarwal,et al.  A random NC algorithm for depth first search , 1987, Comb..

[5]  Lawrence Rauchwerger,et al.  Finding strongly connected components in distributed graphs , 2005, J. Parallel Distributed Comput..

[6]  R. Baker,et al.  An Sn algorithm for the massively parallel CM-200 computer , 1998 .

[7]  Ming-Yang Kao,et al.  Parallel Depth-First Search in General Directed Graphs , 1990, SIAM J. Comput..

[8]  V. Rich Personal communication , 1989, Nature.

[9]  Lawrence Rauchwerger,et al.  Identifying Strongly Connected Components in Parallel , 2000, PPSC.

[10]  David A. Bader A Practical Parallel Algorithm for Cycle Detection in Partitioned Digraphs , 1999 .

[11]  Harold N. Gabow,et al.  Path-based depth-first search for strong and biconnected components , 2000, Inf. Process. Lett..

[12]  Ming-Yang Kao Linear-Processor NC Algorithms for Planar Directed Graphs I: Strongly Connected Components , 1993, SIAM J. Comput..

[13]  Torben Hagerup,et al.  Planar Depth-First Search in O(log n) Parallel Time , 1990, SIAM J. Comput..

[14]  Shawn D. Pautz,et al.  An Algorithm for Parallel Sn Sweeps on Unstructured Meshes , 2001 .

[15]  Steven J. Plimpton,et al.  Parallel Algorithms for Radiation Transport on Unstructured Grids , 2000, ACM/IEEE SC 2000 Conference (SC'00).

[16]  Gary L. Miller,et al.  An Improved Parallel Algorithm that Computes the BFS Numbering of a Directed Graph , 1988, Information Processing Letters.

[17]  P. Chaudhuri Finding and Updating Depth-First Spanning Trees of Acyclic Digraphs in Parallel , 1990, Comput. J..

[18]  Robert E. Tarjan,et al.  Depth-First Search and Linear Graph Algorithms , 1972, SIAM J. Comput..