Answering distance queries in directed graphs using fast matrix multiplication

Let G = (V, E, w) be a weighted directed graph, where w : E /spl rarr/ {-M, ..., 0, ..., M}. We show that G can be preprocessed in O/spl tilde/(Mn/sup /spl omega//) time, where /spl omega/ < 2.376 is the exponent of fast matrix multiplication, such that subsequently, each distance /spl delta/(u,...

Full description

Saved in:
Bibliographic Details
Published in46th Annual IEEE Symposium on Foundations of Computer Science (FOCS'05) pp. 389 - 396
Main Authors Yuster, R., Zwick, U.
Format Conference Proceeding
LanguageEnglish
Published IEEE 2005
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:Let G = (V, E, w) be a weighted directed graph, where w : E /spl rarr/ {-M, ..., 0, ..., M}. We show that G can be preprocessed in O/spl tilde/(Mn/sup /spl omega//) time, where /spl omega/ < 2.376 is the exponent of fast matrix multiplication, such that subsequently, each distance /spl delta/(u, v) in the graph, where u, v /spl epsi/ V, can be computed exactly in O(n) time. We also present a tradeoff between the processing time and the query answering time. As a very special case, we obtain an O/spl tilde/(Mn/sup /spl omega//) time algorithm for the single source shortest paths (SSSP) problem for directed graphs with integer weights of absolute value at most M. For sufficiently dense graphs, with small enough edge weights, this improves upon the O(m/spl radic/n log M) time algorithm of Goldberg. We note that even the case M = 1, in which all the edge weights are in {-1, 0, +1}, is an interesting case for which no improvement over Goldberg's O(m/spl radic/n) algorithm was known. Our new O/spl tilde/(Mn/sup /spl omega//) algorithm is faster whenever m > n/sup /spl omega/- 1/2 / /spl sime/ n/sup 1.876/.
ISBN:0769524680
9780769524689
ISSN:0272-5428
DOI:10.1109/SFCS.2005.20