Results 1  10
of
31
Ambivalent Data Structures For Dynamic 2EdgeConnectivity And k Smallest Spanning Trees
 SIAM J. Comput
, 1991
"... . Ambivalent data structures are presented for several problems on undirected graphs. These data structures are used in finding the k smallest spanning trees of a weighted undirected graph in O(m log #(m, n) + min{k 3/2 ,km 1/2 }) time, where m is the number of edges and n the number of vertice ..."
Abstract

Cited by 83 (1 self)
 Add to MetaCart
. Ambivalent data structures are presented for several problems on undirected graphs. These data structures are used in finding the k smallest spanning trees of a weighted undirected graph in O(m log #(m, n) + min{k 3/2 ,km 1/2 }) time, where m is the number of edges and n the number of vertices in the graph. The techniques are extended to find the k smallest spanning trees in an embedded planar graph in O(n + k(log n) 3 ) time. Ambivalent data structures are also used to dynamically maintain 2edgeconnectivity information. Edges and vertices can be inserted or deleted in O(m 1/2 ) time, and a query as to whether two vertices are in the same 2edgeconnected component can be answered in O(log n) time, where m and n are understood to be the current number of edges and vertices, respectively. Key words. analysis of algorithms, data structures, embedded planar graph, fully persistent data structures, k smallest spanning trees, minimum spanning tree, online updating, topology tr...
Optimal preprocessing for answering online product queries
, 1987
"... We examine the amount of preprocessing needed for answering certain online queries as fast as possible. We start with the following basic problem. Suppose we are given a semigroup (S,°). Let s 1,..., sn be elements of S. We want to answer online queries of the form, "What is the product s i°s ..."
Abstract

Cited by 56 (3 self)
 Add to MetaCart
We examine the amount of preprocessing needed for answering certain online queries as fast as possible. We start with the following basic problem. Suppose we are given a semigroup (S,°). Let s 1,..., sn be elements of S. We want to answer online queries of the form, "What is the product s i°s i +1 ° j −1 j n 1... °s °s? " for any give ≤ i ≤ j ≤ n. We show that a preprocessing of Θ(n λ(k,n)) time and space is both necessary and sufficient to answer each such query in at most k steps, for any fixed k. The function λ(k,.) is the inverse of a certain function at the �k /2 �−th level of the primitive recursive hierarchy. In case linear preprocessing is desired, we show that one can answer each such query in at most O (α(n)) steps and that this is best possible. The function α(n) is the inverse Ackermann function. We also consider the following extended problem. Let T be a tree with an element of S associated with each of its vertices. We want to answer online queries of the form, " What is the product of the elements associated with the vertices along the path from u to v? " for any pair of vertices u and v in T. We derive results, which are similar to the above, for the preprocessing needed for answering such queries. All our sequential preprocessing algorithms can be parallelized efficiently to give optimal parallel algorithms which run in O (logn) time on a CREW PRAM. These parallel algorithms are optimal in both running time and total number of operations.
Planar Separators and Parallel Polygon Triangulation
, 1992
"... We show how to construct an O( p n)separator decomposition of a planar graph G in O(n) time. Such a decomposition defines a binary tree where each node corresponds to a subgraph of G and stores an O( p n)separator of that subgraph. We also show how to construct an O(n ffl )way decomposition tree ..."
Abstract

Cited by 51 (7 self)
 Add to MetaCart
We show how to construct an O( p n)separator decomposition of a planar graph G in O(n) time. Such a decomposition defines a binary tree where each node corresponds to a subgraph of G and stores an O( p n)separator of that subgraph. We also show how to construct an O(n ffl )way decomposition tree in parallel in O(log n) time so that each node corresponds to a subgraph of G and stores an O(n 1=2+ffl )separator of that subgraph. We demonstrate the utility of such a separator decomposition by showing how it can be used in the design of a parallel algorithm for triangulating a simple polygon deterministically in O(log n) time using O(n= log n) processors on a CRCW PRAM. Keywords: Computational geometry, algorithmic graph theory, planar graphs, planar separators, polygon triangulation, parallel algorithms, PRAM model. 1 Introduction Let G = (V; E) be an nnode graph. An f(n)separator is an f(n)sized subset of V whose removal disconnects G into two subgraphs G 1 and G 2 each...
Parallel Algorithms with Optimal Speedup for Bounded Treewidth
 Proceedings 22nd International Colloquium on Automata, Languages and Programming
, 1995
"... We describe the first parallel algorithm with optimal speedup for constructing minimumwidth tree decompositions of graphs of bounded treewidth. On nvertex input graphs, the algorithm works in O((logn)^2) time using O(n) operations on the EREW PRAM. We also give faster parallel algorithms with opti ..."
Abstract

Cited by 33 (10 self)
 Add to MetaCart
We describe the first parallel algorithm with optimal speedup for constructing minimumwidth tree decompositions of graphs of bounded treewidth. On nvertex input graphs, the algorithm works in O((logn)^2) time using O(n) operations on the EREW PRAM. We also give faster parallel algorithms with optimal speedup for the problem of deciding whether the treewidth of an input graph is bounded by a given constant and for a variety of problems on graphs of bounded treewidth, including all decision problems expressible in monadic secondorder logic. On nvertex input graphs, the algorithms use O(n) operations together with O(log n log n) time on the EREW PRAM, or O(log n) time on the CRCW PRAM.
Optimal Parallel AllNearestNeighbors Using the WellSeparated Pair Decomposition
 In Proc. 34th IEEE Symposium on Foundations of Computer Science
, 1993
"... We present an optimal parallel algorithm to construct the wellseparated pair decomposition of a point set P in ! d . We show how this leads to a deterministic optimal O(logn) time parallel algorithm for finding the knearestneighbors of each point in P , where k is a constant. We discuss severa ..."
Abstract

Cited by 27 (1 self)
 Add to MetaCart
We present an optimal parallel algorithm to construct the wellseparated pair decomposition of a point set P in ! d . We show how this leads to a deterministic optimal O(logn) time parallel algorithm for finding the knearestneighbors of each point in P , where k is a constant. We discuss several additional applications of the wellseparated pair decomposition for which we can derive faster parallel algorithms. 1 Introduction In [4] we introduced the wellseparated pair decomposition of a set P of n points in ! d , and showed how to apply this decomposition to develop efficient parallel algorithms for two problems posed on multidimensional point sets. One of these applications led to the fastest known deterministic parallel algorithm for finding the knearestneighbors of each point in P using O(n) processors. The time required for this algorithm is \Theta(log 2 n), which is within a log n factor of optimal. In this paper, we close the gap by developing an optimal O(log n) ti...
Evaluating Arithmetic Expressions Using Tree Contraction: A Fast and Scalable Parallel Implementation for Symmetric Multiprocessors (SMPs)
 Proc. 9th Int’l Conf. on High Performance Computing (HiPC 2002), volume 2552 of Lecture Notes in Computer Science
, 2002
"... The ability to provide uniform sharedmemory access to a significant number of processors in a single SMP node brings us much closer to the ideal PRAM parallel computer. In this paper, we develop new techniques for designing a uniform sharedmemory algorithm from a PRAM algorithm and present the res ..."
Abstract

Cited by 23 (7 self)
 Add to MetaCart
The ability to provide uniform sharedmemory access to a significant number of processors in a single SMP node brings us much closer to the ideal PRAM parallel computer. In this paper, we develop new techniques for designing a uniform sharedmemory algorithm from a PRAM algorithm and present the results of an extensive experimental study demonstrating that the resulting programs scale nearly linearly across a significant range of processors and across the entire range of instance sizes tested. This linear speedup with the number of processors is one of the first ever attained in practice for intricate combinatorial problems. The example we present in detail here is for evaluating arithmetic expression trees using the algorithmic techniques of list ranking and tree contraction; this problem is not only of interest in its own right, but is representativeof a large class of irregular combinatorial problems that have simple and efficient sequential implementations and fast PRAM algorithms, but have no known efficient parallel implementations. Our results thus offer promise for bridging the gap between the theory and practice of sharedmemory parallel algorithms.
Range mode and range median queries on lists and trees
 In Proceedings of the 14th Annual International Symposium on Algorithms and Computation (ISAAC
, 2003
"... ABSTRACT. We consider algorithms for preprocessing labelled lists and trees so that, for any two nodes u and v we can answer queries of the form: What is the mode or median label in the sequence of labels on the path from u to v. 1 ..."
Abstract

Cited by 16 (3 self)
 Add to MetaCart
ABSTRACT. We consider algorithms for preprocessing labelled lists and trees so that, for any two nodes u and v we can answer queries of the form: What is the mode or median label in the sequence of labels on the path from u to v. 1
Structural Parallel Algorithmics
, 1991
"... The first half of the paper is a general introduction which emphasizes the central role that the PRAM model of parallel computation plays in algorithmic studies for parallel computers. Some of the collective knowledgebase on nonnumerical parallel algorithms can be characterized in a structural way ..."
Abstract

Cited by 11 (4 self)
 Add to MetaCart
The first half of the paper is a general introduction which emphasizes the central role that the PRAM model of parallel computation plays in algorithmic studies for parallel computers. Some of the collective knowledgebase on nonnumerical parallel algorithms can be characterized in a structural way. Each structure relates a few problems and technique to one another from the basic to the more involved. The second half of the paper provides a bird'seye view of such structures for: (1) list, tree and graph parallel algorithms; (2) very fast deterministic parallel algorithms; and (3) very fast randomized parallel algorithms. 1 Introduction Parallelism is a concern that is missing from "traditional" algorithmic design. Unfortunately, it turns out that most efficient serial algorithms become rather inefficient parallel algorithms. The experience is that the design of parallel algorithms requires new paradigms and techniques, offering an exciting intellectual challenge. We note that it had...
The complexity of constructing evolutionary trees using experiments
, 2001
"... We present tight upper and lower bounds for the problem of constructing evolutionary trees in the experiment model. We describe an algorithm which constructs an evolutionary tree of n species in time O(nd log d n) using at most n⌈d/2⌉(log 2⌈d/2⌉−1 n+O(1)) experiments for d> 2, and at most n(log n+ ..."
Abstract

Cited by 8 (1 self)
 Add to MetaCart
We present tight upper and lower bounds for the problem of constructing evolutionary trees in the experiment model. We describe an algorithm which constructs an evolutionary tree of n species in time O(nd log d n) using at most n⌈d/2⌉(log 2⌈d/2⌉−1 n+O(1)) experiments for d> 2, and at most n(log n+O(1)) experiments for d = 2, where d is the degree of the tree. This improves the previous best upper bound by a factor Θ(log d). For d = 2 the previously best algorithm with running time O(n log n) had a bound of 4n log n on the number of experiments. By an explicit adversary argument, we show an Ω(nd log d n) lower bound, matching our upper bounds and improving the previous best lower bound by a factor Θ(log d n). Central to our algorithm is the construction and maintenance of separator trees of small height, which may be of independent interest.
Thinking in parallel: Some basic dataparallel algorithms and techniques
 In use as class notes since
, 1993
"... Copyright 19922009, Uzi Vishkin. These class notes reflect the theorertical part in the Parallel ..."
Abstract

Cited by 7 (1 self)
 Add to MetaCart
Copyright 19922009, Uzi Vishkin. These class notes reflect the theorertical part in the Parallel