Results 11  20
of
33
Optimal Parallel Suffix Tree Construction
, 1997
"... An O(m)work, O(m)space, O(log m)time CREWPRAM algorithm for constructing the suffix tree of a string s of length m drawn from any fixed alphabet set is obtained. This is the first known work and space optimal parallel algorithm for this problem. It can be generalized to a string s drawn fr ..."
Abstract

Cited by 17 (1 self)
 Add to MetaCart
An O(m)work, O(m)space, O(log m)time CREWPRAM algorithm for constructing the suffix tree of a string s of length m drawn from any fixed alphabet set is obtained. This is the first known work and space optimal parallel algorithm for this problem. It can be generalized to a string s drawn from any general alphabet set to perform in O(log m) time and O(m log j\Sigmaj) work and space, after the characters in s have been sorted alphabetically, where j\Sigmaj is the number of distinct characters in s. In this case too, the algorithm is workoptimal.
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...
A Fast Algorithm for Optimal Alignment Between Similar Ordered Trees
 Fundamenta Informaticae
, 2001
"... . We present a fast algorithm for optimal alignment between two similar ordered trees with node labels. Let S and T be two such trees with jSj and jT j nodes, respectively. An optimal alignment between S and T which uses at most d blank symbols can be constructed in O(n log n (maxdeg) 4 d 2 ..."
Abstract

Cited by 11 (3 self)
 Add to MetaCart
. We present a fast algorithm for optimal alignment between two similar ordered trees with node labels. Let S and T be two such trees with jSj and jT j nodes, respectively. An optimal alignment between S and T which uses at most d blank symbols can be constructed in O(n log n (maxdeg) 4 d 2 ) time, where n = maxfjSj; jT jg and maxdeg is the maximum degree of a node in S or T . In particular, if the input trees are of bounded degree, the running time is O(n log n d 2 ): 1 Introduction Let R be a rooted tree. R is called a labeled tree if each node of R is labeled by a symbol from a xed nite set . R is an ordered tree if the lefttoright order among siblings in R is given. The problem of determining the similarity between two labeled trees occurs in several dierent areas of computer science. For example, in computational biology, methods for measuring the similarity between ordered labeled trees of bounded degree can be used in the comparison of RNA secondary st...
Improved Sampling with Applications to Dynamic Graph Algorithms.
 Proc. 23rd International Colloquium on Automata, Languages, and Programming (ICALP), LNCS 1099
, 1996
"... . We state a new sampling lemma and use it to improve the running time of dynamic graph algorithms. For the dynamic connectivity problem the previously best randomized algorithm takes expected time O(log 3 n) per update, amortized over\Omega (m) updates. Using the new sampling lemma, we improve it ..."
Abstract

Cited by 10 (7 self)
 Add to MetaCart
. We state a new sampling lemma and use it to improve the running time of dynamic graph algorithms. For the dynamic connectivity problem the previously best randomized algorithm takes expected time O(log 3 n) per update, amortized over\Omega (m) updates. Using the new sampling lemma, we improve its running time to O(log 2 n). There exists a lower bound in the cell probe model for the time per operation of\Omega (log n= log log n) for this problem. Similarly improved running times are achieved for 2edge connectivity, kweight minimum spanning tree, and bipartiteness. 1 Introduction In this paper we present a new sampling lemma, and use it to improve the running times of various dynamic graph algorithms. We consider the following type of problem: Let S be a set with a subset R ` S. Membership in R may be efficiently tested. For a given parameter r ? 1, either (i) find an element of R, or (ii) guarantee with high probability that the ratio jRj=jSj is at most 1=r, i.e. that rjRj j...
Diffusion: Calculating Efficient Parallel Programs
 IN 1999 ACM SIGPLAN WORKSHOP ON PARTIAL EVALUATION AND SEMANTICSBASED PROGRAM MANIPULATION (PEPM ’99
, 1999
"... Parallel primitives (skeletons) intend to encourage programmers to build a parallel program from readymade components for which efficient implementations are known to exist, making the parallelization process easier. However, programmers often suffer from the difficulty to choose a combination of p ..."
Abstract

Cited by 9 (7 self)
 Add to MetaCart
Parallel primitives (skeletons) intend to encourage programmers to build a parallel program from readymade components for which efficient implementations are known to exist, making the parallelization process easier. However, programmers often suffer from the difficulty to choose a combination of proper parallel primitives so as to construct efficient parallel programs. To overcome this difficulty, we shall propose a new transformation, called diffusion, which can efficiently decompose a recursive definition into several functions such that each function can be described by some parallel primitive. This allows programmers to describe algorithms in a more natural recursive form. We demonstrate our idea with several interesting examples. Our diffusion transformation should be significant not only in development of new parallel algorithms, but also in construction of parallelizing compilers.
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
Fast Parallel Algorithms for the Clique Separator Decomposition
, 1990
"... We give an efficient NC algorithm for finding a clique separator decomposition of an arbitrary graph, that is, a series of cliques whose removal disconnects the graph. This algorithm allows one to extend a large body of results which were originally formulated for chordal graphs to other classes of ..."
Abstract

Cited by 5 (1 self)
 Add to MetaCart
We give an efficient NC algorithm for finding a clique separator decomposition of an arbitrary graph, that is, a series of cliques whose removal disconnects the graph. This algorithm allows one to extend a large body of results which were originally formulated for chordal graphs to other classes of graphs. Our algorithm is optimal to within a polylogarithmic factor of Tarjan's O(mn) time sequential algorithm. The decomposition can also be used to find NC algorithms for some optimization problems on special families of graphs, assuming these problems can be solved in NC for the prime graphs of the decomposition. These optimization problems include: finding a maximumweight clique, a minimum coloring, a maximumweight independent set, and a minimum fillin elimination order. We also give the first parallel algorithms for solving these problems by using the clique separator decomposition. Our maximumweight independent set algorithm applied to chordal graphs yields the most efficient know...
Sampling to Provide or to Bound: With Applications to Fully Dynamic Graph Algorithms
, 1997
"... In dynamic graph algorithms the following provideorbound problem has to be solved quickly: Given a set S containing a subset R and a way of generating random elements from S testing for membership in R, either (i) provide an element of R or (ii) give a (small) upper bound on the size of R that hol ..."
Abstract

Cited by 5 (1 self)
 Add to MetaCart
In dynamic graph algorithms the following provideorbound problem has to be solved quickly: Given a set S containing a subset R and a way of generating random elements from S testing for membership in R, either (i) provide an element of R or (ii) give a (small) upper bound on the size of R that holds with high probability. We give an optimal algorithm for this problem. This algorithm improves the time per operation for various dyamic graph algorithms by a factor of O(log n). For example, it improves the time per update for fully dynamic connectivity from O(log 3 n) to O(log 2 n). 1 Introduction In this paper we present a new sampling lemma, and use it to improve the running times of various fully dynamic graph algorithms. We consider the following provideorbound problem: Let S be a set with a subset R ` S. Given (1) an oracle to uniformly sample elements in S, (2) an oracle to test membership in R, and (3) the parameters s = jSj and ` ? 1 either (i) provide an element of R, o...
Parallelizing An Algorithm For Visibility On Polyhedral Terrain
, 1995
"... The best known outputsensitive sequential algorithm for computing the viewshed on a polyhedral terrain from a given viewpoint was proposed by Katz, Overmars, and Sharir 10 , and achieves time complexity O((k + nff(n)) log n) where n and k are the input and output sizes respectively, and ff() is t ..."
Abstract

Cited by 4 (0 self)
 Add to MetaCart
The best known outputsensitive sequential algorithm for computing the viewshed on a polyhedral terrain from a given viewpoint was proposed by Katz, Overmars, and Sharir 10 , and achieves time complexity O((k + nff(n)) log n) where n and k are the input and output sizes respectively, and ff() is the inverse Ackermann's function. In this paper, we present a parallel algorithm that is based on the work mentioned above, and achieves O(log 2 n) time complexity, with work complexity O((k + nff(n)) log n) in a CREW PRAM model. This improves on previous parallel complexity while maintaining work efficiency with respect to the best sequential complexity known. Keywords: Terrain visibility, parallel algorithms, CREW PRAM, profile tree 1. Introduction Visibility analysis on terrain is a fundamental problem in computer graphics, navigation, and engineering applications. Several aspects of this problem have been Permanent address: Jet Propulsion Lab, 4800 Oak Grove Dr. MS 168522, Pasade...
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.