1995KU ScholarWorks (University of Kansas)Open access

External-memory graph algorithms

Yi‐Jen Chiang, Michael T. Goodrich, Edward F. Grove, Roberto Tamassia, Darren Erik Vengroff, Jeffrey Scott Vitter

Open full text 278 citations

Abstract

We present a collection of new techniques for designing and analyzing efficient external-memory algorithms for graph problems and illustrate how these techniques can be applied to a wide variety of specific problems. Our results include:\nProximate-neighboring. We present a simple\nmethod for deriving external-memory lower bounds\nvia reductions from a problem we call the “proximate neighbors” problem. We use this technique to derive non-trivial lower bounds for such problems as list ranking, expression tree evaluation, and connected components. PRAM simulation. We give methods for efficiently\nsimulating PRAM computations in external memory, even for some cases in which the PRAM algorithm is not work-optimal. We apply this to derive a number of optimal (and simple) external-memory graph algorithms.\nTime-forward processing. We present a general\ntechnique for evaluating circuits (or “circuit-like”\ncomputations) in external memory. We also usethis in a deterministic list ranking algorithm.\nDeterministic 3-coloring of a cycle. We give\nseveral optimal methods for 3-coloring a cycle,\nwhich can be used as a subroutine for finding large\nindependent sets for list ranking. Our ideas go\nbeyond a straightforward PRAM simulation, and\nmay be of independent interest.\nExternal depth-first search. We discuss a method\nfor performing depth first search and solving related\nproblems efficiently in external memory. Our\ntechnique can be used in conjunction with ideas\ndue to Ullman and Yannakakis in order to solve\ngraph problems involving closed semi-ring computations even when their assumption that vertices fit in main memory does not hold.\nOur techniques apply to a number of problems, including list ranking, which we discuss in detail, finding Euler tours, expression-tree evaluation, centroid decomposition of a tree, least-common ancestors, minimum spanning tree verification, connected and biconnected components, minimum spanning forest, ear decomposition, topological sorting, reachability, graph drawing, and visibility representation.

Open-access reader

About this research paper

What this paper is about

We present a collection of new techniques for designing and analyzing efficient external-memory algorithms for graph problems and illustrate how these techniques can be applied to a wide variety of specific problems. Our results include:\nProximate-neighboring. We present a simple\nmethod for deriving external-memory lower bounds\nvia reductions from a problem we call the “proximate neighbors” problem. We use this technique to derive non-trivial lower bounds for such problems as list ranking, expression tree evaluation, and connected components. PRAM simulation. We give methods for efficiently\nsimulating PRAM computations in external memory, even for some cases in which the PRAM algorithm is not work-optimal. We apply this to derive a number of optimal (and simple) external-memory graph algorithms.\nTime-forward processing. We present a general\ntechnique for evaluating circuits (or “circuit-like”\ncomputations) in external memory. We also usethis in a deterministic list ranking algorithm.\nDeterministic 3-coloring of a cycle. We give\nseveral optimal methods for 3-coloring a cycle,\nwhich can be used as a subroutine for finding large\nindependent sets for list ranking. Our ideas go\nbeyond a straightforward PRAM simulation, and\nmay be of independent interest.\nExternal depth-first search. We discuss a method\nfor performing depth first search and solving related\nproblems efficiently in external memory. Our\ntechnique can be used in conjunction with ideas\ndue to Ullman and Yannakakis in order to solve\ngraph problems involving closed semi-ring computations even when their assumption that vertices fit in main memory does not hold.\nOur techniques apply to a number of problems, including list ranking, which we discuss in detail, finding Euler tours, expression-tree evaluation, centroid decomposition of a tree, least-common ancestors, minimum spanning tree verification, connected and biconnected components, minimum spanning forest, ear decomposition, topological sorting, reachability, graph drawing, and visibility representation.

Why it matters

OpenAlex reports 278 citations for this work. Citation counts describe recorded attention and do not establish research quality.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

We present a collection of new techniques for designing and analyzing efficient external-memory algorithms for graph problems and illustrate how these techniques can be applied to a wide variety of specific problems. Our results include:\nProximate-neighboring. We present a simple\nmethod for deriving external-memory lower bounds\nvia reductions from a problem we call the “proximate neighbors” problem. We use this technique to derive non-trivial lower bounds for such problems as list ranking, expression tree evaluation, and connected components. PRAM simulation. We give methods for efficiently\nsimulating PRAM computations in external memory, even for some cases in which the PRAM algorithm is not work-optimal. We apply this to derive a number of optimal (and simple) external-memory graph algorithms.\nTime-forward processing. We present a general\ntechnique for evaluating circuits (or “circuit-like”\ncomputations) in external memory. We also usethis in a deterministic list ranking algorithm.\nDeterministic 3-coloring of a cycle. We give\nseveral optimal methods for 3-coloring a cycle,\nwhich can be used as a subroutine for finding large\nindependent sets for list ranking. Our ideas go\nbeyond a straightforward PRAM simulation, and\nmay be of independent interest.\nExternal depth-first search. We discuss a method\nfor performing depth first search and solving related\nproblems efficiently in external memory. Our\ntechnique can be used in conjunction with ideas\ndue to Ullman and Yannakakis in order to solve\ngraph problems involving closed semi-ring computations even when their assumption that vertices fit in main memory does not hold.\nOur techniques apply to a number of problems, including list ranking, which we discuss in detail, finding Euler tours, expression-tree evaluation, centroid decomposition of a tree, least-common ancestors, minimum spanning tree verification, connected and biconnected components, minimum spanning forest, ear decomposition, topological sorting, reachability, graph drawing, and visibility representation.

Key concepts: Computer science, Graph, Algorithm, Theoretical computer science

Related papers

Back to paper searchBrowse research topicsOriginal source
External-memory graph algorithms — Research Paper | ScholarLens