External-memory graph algorithms
Proceedings of the sixth annual ACM-SIAM symposium on Discrete algorithms
A Discipline of Programming
Heuristics for semi-external depth first search on directed graphs
Proceedings of the fourteenth annual ACM symposium on Parallel algorithms and architectures
External-Memory Breadth-First Search with Sublinear I/O
ESA '02 Proceedings of the 10th Annual European Symposium on Algorithms
External memory data structures
Handbook of massive data sets
On external-memory MST, SSSP and multi-way planar graph separation
Journal of Algorithms
A computational study of external-memory BFS algorithms
SODA '06 Proceedings of the seventeenth annual ACM-SIAM symposium on Discrete algorithm
STXXL: standard template library for XXL data sets
Software—Practice & Experience
Algorithms and data structures for external memory
Foundations and Trends® in Theoretical Computer Science
ESA '08 Proceedings of the 16th annual European symposium on Algorithms
Combining hierarchical and goal-directed speed-up techniques for Dijkstra's algorithm
WEA'08 Proceedings of the 7th international conference on Experimental algorithms
Contraction hierarchies: faster and simpler hierarchical routing in road networks
WEA'08 Proceedings of the 7th international conference on Experimental algorithms
Computing strongly connected components in the streaming model
TAPAS'11 Proceedings of the First international ICST conference on Theory and practice of algorithms in (computer) systems
A topological sorting algorithm for large graphs
Journal of Experimental Algorithmics (JEA)
I/O efficient: computing SCCs in massive graphs
Proceedings of the 2013 ACM SIGMOD International Conference on Management of Data
Hi-index | 0.00 |
We present a contraction-based algorithm for computing the strongly connected components of large graphs. While the worst-case complexity of the algorithm can be terrible (essentially the cost of running a DFS-based internal-memory algorithm on the entire graph), our experiments confirm that the algorithm performs remarkably well in practice. The strongest competitor is the algorithm by Sibeyn et al. [17], which is based on a semi-external DFS algorithm developed in the same paper. Our algorithm substantially outperforms the algorithm of [17] on most of the graphs used in our experiments and never performs worse. It thus demonstrates that graph contraction, which is the most important technique for solving connectivity problems on undirected graphs I/O-efficiently, can be used to solve such problems also on directed graphs, at least as a heuristic.