Results 1  10
of
13
An efficient parallel biconnectivity algorithm
 SIAM J. Computing
, 1985
"... Abstract. In this paper we propose a new algorithm for finding the blocks (biconnected components) of an undirected graph. A serial implementation runs in O(n + m) time and space on a graph of n vertices and m edges. A parallel implementation runs in O(log n) time and O(n + m) space using O(n + m) p ..."
Abstract

Cited by 98 (5 self)
 Add to MetaCart
Abstract. In this paper we propose a new algorithm for finding the blocks (biconnected components) of an undirected graph. A serial implementation runs in O(n + m) time and space on a graph of n vertices and m edges. A parallel implementation runs in O(log n) time and O(n + m) space using O(n + m) processors on a concurrentread, concurrentwrite parallel RAM. An alternative implementation runs in O(n2/p) time and O(n2) space using any number p < = n/log n of processors, on a concurrentread, exclusivewrite parallel RAM. The last algorithm has optimal speedup, assuming an adjacency matrix representation of the input. A general algorithmic technique that simplifies and improves computation of various functions on trees is introduced. This technique typically requires O(log n) time using processors and O(n) space on an exclusiveread exclusivewrite parallel RAM.
Externalmemory breadthfirst search with sublinear I/O
 IN PROCEEDINGS OF THE 10TH ANNUAL EUROPEAN SYMPOSIUM ON ALGORITHMS
, 2002
"... Breadthfirst 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 (n + n+mD\Delta B \Delta logM=B n+mB) I/Os on a graph with n nodes and m edges and a machine w ..."
Abstract

Cited by 49 (13 self)
 Add to MetaCart
Breadthfirst 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 (n + n+mD\Delta B \Delta logM=B n+mB) I/Os on a graph with n nodes and m edges and a machine with mainmemory of size M, D parallel disks, and block size B. We present two versions of a new algorithm which requires only O i (p 1D\Delta B + p nm) \Delta n+mpD\Delta B \Delta logM=B n+mB
A Parallel Algorithm for Computing Minimum Spanning Trees
, 1992
"... We present a simple and implementable algorithm that computes a minimum spanning tree of an undirected weighted graph G = (V, E) of n = V vertices and m = E edges on an EREW PRAM in O(log 3=2 n) time using n+m processors. This represents a substantial improvement in the running time over the ..."
Abstract

Cited by 30 (3 self)
 Add to MetaCart
We present a simple and implementable algorithm that computes a minimum spanning tree of an undirected weighted graph G = (V, E) of n = V vertices and m = E edges on an EREW PRAM in O(log 3=2 n) time using n+m processors. This represents a substantial improvement in the running time over the previous results for this problem using at the same time the weakest of the PRAM models. It also implies the existence of algorithms having the same complexity bounds for the EREW PRAM, for connectivity, ear decomposition, biconnectivity, strong orientation, stnumbering and Euler tours problems.
Parallel Algorithmic Techniques for Combinatorial Computation
 Ann. Rev. Comput. Sci
, 1988
"... this paper and supplied many helpful comments. This research was supported in part by NSF grants DCR8511713, CCR8605353, and CCR8814977, and by DARPA contract N0003984C0165. ..."
Abstract

Cited by 30 (3 self)
 Add to MetaCart
this paper and supplied many helpful comments. This research was supported in part by NSF grants DCR8511713, CCR8605353, and CCR8814977, and by DARPA contract N0003984C0165.
Connected Components in O(log 3/2 n) Parallel Time for the CREW PRAM
"... Finding the connected components of an undirected graph G = (V; E) on n = jV j vertices and m = jEj edges is a fundamental computational problem. The best known parallel algorithm for the CREW PRAM model runs in O(log 2 n) time using n 2 = log 2 n processors [6, 15]. For the CRCW PRAM model, ..."
Abstract

Cited by 14 (2 self)
 Add to MetaCart
Finding the connected components of an undirected graph G = (V; E) on n = jV j vertices and m = jEj edges is a fundamental computational problem. The best known parallel algorithm for the CREW PRAM model runs in O(log 2 n) time using n 2 = log 2 n processors [6, 15]. For the CRCW PRAM model, in which concurrent writing is permitted, the best known algorithm runs in O(log n) time using slightly more than (n +m)= log n processors [26, 9, 5]. Simulating this algorithm on the weaker CREW model increases its running time to O(log 2 n) [10, 19, 29]. We present here a simple algorithm that runs in O(log 3=2 n) time using n +m CREW processors. Finding an o(log 2 n) parallel connectivity algorithm for this model was an open problem for many years. 1 Introduction Let G = (V; E) be an undirected graph on n = jV j vertices and m = jEj edges. A path p of length k is a sequence of edges (e 1 ; \Delta \Delta \Delta ; e i ; \Delta \Delta \Delta ; e k ) such that e i 2 E for i = 1; \...
Optimal randomized EREW PRAM algorithms for finding spanning forests
 J. Algorithms
, 2000
"... We present the first randomized O(log n) time and O(m+n) work EREW PRAM algorithm for finding a spanning forest of an undirected graph G = (V; E) with n vertices and m edges. Our algorithm is optimal with respect to time, work and space. As a consequence we get optimal randomized EREW PRAM algori ..."
Abstract

Cited by 11 (1 self)
 Add to MetaCart
We present the first randomized O(log n) time and O(m+n) work EREW PRAM algorithm for finding a spanning forest of an undirected graph G = (V; E) with n vertices and m edges. Our algorithm is optimal with respect to time, work and space. As a consequence we get optimal randomized EREW PRAM algorithms for other basic connectivity problems such as finding a bipartite partition, finding bridges and biconnected components, finding Euler tours in Eulerian graphs, finding an ear decomposition, finding an open ear decomposition, finding a strong orientation, and finding an stnumbering.
Parallel and Fast Sequential Algorithms for Undirected Edge Connectivity Augmentation
, 1999
"... In the edge connectivity augmentation problem one wants to find an edge set of minimum total capacity that increases the edge connectivity of a given undirected graph by # . It is a known nontrivial property of the edge connectivity augmentation problem that there is a sequence of edge sets E 1 , E ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
In the edge connectivity augmentation problem one wants to find an edge set of minimum total capacity that increases the edge connectivity of a given undirected graph by # . It is a known nontrivial property of the edge connectivity augmentation problem that there is a sequence of edge sets E 1 , E 2 ,..., such that S i# E optmially increases the connectivity by # , for any integer # . The main result of the paper is that this sequence of edge sets can be divided into O(n) groups such that within one group, all E i are basically the same. Using this result, we improve on the running time of edge connectivity augmentation, as well as we give the first parallel (RNC) augmentation algorithm. We also present new efficient subroutines for finding the socalled extreme sets and the cactus representation of mincuts required in our algorithms. Augmenting the connectivity of hypergraphs with ordinary edges is known to be structurally harder than that of ordinary graphs. In a weaker version when one exceptional hyperedge is allowed in the augmenting edge set, we derive similar results as for ordinary graphs.
Parallel algorithms for the edgecoloring and edgecoloring update problems
 J. Parallel Distributed Comput
, 1996
"... Let G(V, E) be a simple undirected graph with a maximum vertex degree �(G) (or � for short), �V � � n and �E � � m. An edgecoloring of G is an assignment to each edge in G a color such that all edges sharing a common vertex have different colors. The minimum number of colors needed is denoted by ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
Let G(V, E) be a simple undirected graph with a maximum vertex degree �(G) (or � for short), �V � � n and �E � � m. An edgecoloring of G is an assignment to each edge in G a color such that all edges sharing a common vertex have different colors. The minimum number of colors needed is denoted by ��(G) (called the chromatic index). For a simple graph G, itis known that � � ��(G) � ��1. This paper studies two edgecoloring problems. The first problem is to perform edgecoloring for an existing edgecolored graph G with ��1 colors stemming from the addition of a new vertex into G. The proposed parallel algorithm for this problem runs in O( � 3/2 log 3 �� �log n) time using O(max�n�, � 3 �) processors. The second problem is to color the edges of a given uncolored graph G with ��1 colors. For this problem, our first parallel algorithm requires O( � 5.5 log 3 � log n � � 5 log 4 n) time and O(max�n 2 �, n � 3 �) processors, which is a slight improvement on the algorithm by H. J. Karloff and D. B. Shmoys [J. Algorithms 8 (1987), 39–52]. Their algorithm costs O( � 6 log 4 n) time and O(n 2 �) processors if we use the fastest known algorithm for finding maximal independent sets by M. Goldberg and T. Spencer [SIAM J. Discrete Math. 2 (1989), 322–328]. Our second algorithm requires O( � 4.5 log 3 � log n � � 4 log 4 n) time and O(max�n 2, n � 3 �) processors. Finally, we present our third algorithm by incorporating the second algorithm as a subroutine. This algorithm requires O( � 3.5 log 3 � log n � � 3 log 4 n) time and O(max�n 2 log �, n � 3 �) processors, which improves, by an O( � 2.5) factor in time, on Karloff and Shmoys ’ algorithm. All of these algorithms run in the COMMON CRCW PRAM model. © 1996 Academic Press, Inc. 1.
ON DYNAMIC BREADTHFIRST SEARCH IN EXTERNALMEMORY
"... We provide the first nontrivial result on dynamic breadthfirst search (BFS) in externalmemory: For general sparse undirected graphs of initially n nodes and O(n) edges and monotone update sequences of either Θ(n) edge insertions or Θ(n) edge deletions, we prove an amortized highprobability boun ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
We provide the first nontrivial result on dynamic breadthfirst search (BFS) in externalmemory: For general sparse undirected graphs of initially n nodes and O(n) edges and monotone update sequences of either Θ(n) edge insertions or Θ(n) edge deletions, we prove an amortized highprobability bound of O(n/B 2/3 + sort(n) · log B) I/Os per update. In contrast, the currently best approach for static BFS on sparse undirected graphs requires Ω(n/B 1/2 + sort(n)) I/Os.