Abstract
We consider the problem of dynamically maintaining a solution of all pairs shortest paths in a directed weighted graph G= (V, E) undergoing a sequence of edge insertions and/or the edge cost decreases, and present a simple data structure to support the above operations. The proposed algorithm for maintaining the data structure requires O(logn) time and O(n2) processors for each of the operations above. Furthermore, our algorithm is able to answer n2 queries concerning the lengths of all pairs shortest paths in O(1) time, and to find n shortest paths in O(logn) time. The same bounds for similar operations can be achieved for other problems such as dynamically maintaining all pairs longest paths in a directed acyclic graph (DAG), the topological order of a DAG, and the transitive closure of a directed graph. To the best of our knowledge, no partially dynamic NC algorithm using O(n2) processors for these problems is known yet, despite the existence of several efficient sequential algorithms. All known NC algorithms for these problems are based on matrix multiplication which requires M(n) processors at least. Currently the best result for M(n) is n2.376 (Coppersmith and Winograd, 1987). Unless otherwise specified, our computational model is a CREW PRAM in which concurrent read to the same memory cell is allowed, but concurrent write to the same memory cell is forbidden.
Original language | English |
---|---|
Pages (from-to) | 149-155 |
Number of pages | 7 |
Journal | Information Processing Letters |
Volume | 58 |
Issue number | 3 |
DOIs | |
Publication status | Published - 13 May 1996 |
Externally published | Yes |
Keywords
- Parallel algorithms
- Partially dynamic graph algorithms
- The all pairs shortest paths problem
- The longest path problem
- The transitive closure problem
- Topological sorting