European Symposium on Algorithms

ESA 2002: Algorithms — ESA 2002 pp 723-735

# External-Memory Breadth-First Search with Sublinear I/O

• Kurt Mehlhorn
• Ulrich Meyer
Conference paper

DOI: 10.1007/3-540-45749-6_63

Volume 2461 of the book series Lecture Notes in Computer Science (LNCS)
Cite this paper as:
Mehlhorn K., Meyer U. (2002) External-Memory Breadth-First Search with Sublinear I/O. In: Möhring R., Raman R. (eds) Algorithms — ESA 2002. ESA 2002. Lecture Notes in Computer Science, vol 2461. Springer, Berlin, Heidelberg

## Abstract

Breadth-first search (BFS) is a basic graph exploration technique. We give the first external memory algorithm for sparse undirected graphs with sublinear I/O. The best previous algorithm requires $$\Theta \left( {n + \tfrac{{n + m}} {{D \cdot B}} \cdot \log _{M/B} \tfrac{{n + m}} {B}} \right)$$ I/Os on a graph with n nodes and m edges and a machine with main-memory of size M, D parallel disks, and block size B. We present a new approach which requires only $$\mathcal{O}(\sqrt {\tfrac{{n \cdot (n + m)}} {{D \cdot B}} + } \tfrac{{n + m}} {{D \cdot B}} \cdot \log _{M/B} \tfrac{{n + m}} {B})$$ I/Os. Hence, for $$\Omega \sqrt {D \cdot B}$$ and all realistic values of $$m = \mathcal{O}(n)$$, it improves upon the I/O-performance of the best previous algorithm by a factor $$\log _{M/B} \tfrac{{n + m}} {B})$$. Our approach is fairly simple and we conjecture it to be practical. We also give improved algorithms for undirected single-source shortest-paths with small integer edge weights and for semi-external BFS on directed Eulerian graphs.