Results 1  10
of
188
A Guided Tour to Approximate String Matching
 ACM Computing Surveys
, 1999
"... We survey the current techniques to cope with the problem of string matching allowing errors. This is becoming a more and more relevant issue for many fast growing areas such as information retrieval and computational biology. We focus on online searching and mostly on edit distance, explaining t ..."
Abstract

Cited by 418 (38 self)
 Add to MetaCart
We survey the current techniques to cope with the problem of string matching allowing errors. This is becoming a more and more relevant issue for many fast growing areas such as information retrieval and computational biology. We focus on online searching and mostly on edit distance, explaining the problem and its relevance, its statistical behavior, its history and current developments, and the central ideas of the algorithms and their complexities. We present a number of experiments to compare the performance of the different algorithms and show which are the best choices according to each case. We conclude with some future work directions and open problems. 1
The LCA problem revisited
 In Latin American Theoretical INformatics
, 2000
"... Abstract. We present a very simple algorithm for the Least Common Ancestors problem. We thus dispel the frequently held notion that optimal LCA computation is unwieldy and unimplementable. Interestingly, this algorithm is a sequentialization of a previously known PRAM algorithm. 1 ..."
Abstract

Cited by 185 (5 self)
 Add to MetaCart
Abstract. We present a very simple algorithm for the Least Common Ancestors problem. We thus dispel the frequently held notion that optimal LCA computation is unwieldy and unimplementable. Interestingly, this algorithm is a sequentialization of a previously known PRAM algorithm. 1
Efficient keyword search for smallest LCAs in XML databases
 In SIGMOD
, 2005
"... Keyword search is a proven, userfriendly way to query HTML documents in the World Wide Web. We propose keyword search in XML documents, modeled as labeled trees, and describe corresponding efficient algorithms. The proposed keyword search returns ..."
Abstract

Cited by 121 (7 self)
 Add to MetaCart
Keyword search is a proven, userfriendly way to query HTML documents in the World Wide Web. We propose keyword search in XML documents, modeled as labeled trees, and describe corresponding efficient algorithms. The proposed keyword search returns
Ambivalent data structures for dynamic 2edgeconnectivity and k smallest spanning trees
 SIAM J. Comput
, 1997
"... ..."
Nearest Common Ancestors: A survey and a new distributed algorithm
, 2002
"... Several papers describe linear time algorithms to preprocess a tree, such that one can answer subsequent nearest common ancestor queries in constant time. Here, we survey these algorithms and related results. A common idea used by all the algorithms for the problem is that a solution for complete ba ..."
Abstract

Cited by 76 (11 self)
 Add to MetaCart
Several papers describe linear time algorithms to preprocess a tree, such that one can answer subsequent nearest common ancestor queries in constant time. Here, we survey these algorithms and related results. A common idea used by all the algorithms for the problem is that a solution for complete balanced binary trees is straightforward. Furthermore, for complete balanced binary trees we can easily solve the problem in a distributed way by labeling the nodes of the tree such that from the labels of two nodes alone one can compute the label of their nearest common ancestor. Whether it is possible to distribute the data structure into short labels associated with the nodes is important for several applications such as routing. Therefore, related labeling problems have received a lot of attention recently.
Minimum Cuts in NearLinear Time
, 1999
"... We significantly improve known time bounds for solving the minimum cut problem on undirected graphs. We use a "semiduality" between minimum cuts and maximum spanning tree packings combined with our previously developed random sampling techniques. We give a randomized (Monte Carlo) algorit ..."
Abstract

Cited by 73 (11 self)
 Add to MetaCart
We significantly improve known time bounds for solving the minimum cut problem on undirected graphs. We use a "semiduality" between minimum cuts and maximum spanning tree packings combined with our previously developed random sampling techniques. We give a randomized (Monte Carlo) algorithm that finds a minimum cut in an medge, nvertex graph with high probability in O(m log³ n) time. We also give a simpler randomized algorithm that finds all minimum cuts with high probability in O(n² log n) time. This variant has an optimal RNC parallelization. Both variants improve on the previous best time bound of O(n² log³ n). Other applications of the treepacking approach are new, nearly tight bounds on the number of near minimum cuts a graph may have and a new data structure for representing them in a spaceefficient manner.
From Gene Trees to Species Trees
, 1998
"... This paper studies various algorithmic issues in reconstructing a species tree from gene trees under the duplication and the mutation cost model. This is a fundamental problem in computational molecular biology. Our main results are as follows. 1. A linear time algorithm is presented for computing a ..."
Abstract

Cited by 61 (3 self)
 Add to MetaCart
This paper studies various algorithmic issues in reconstructing a species tree from gene trees under the duplication and the mutation cost model. This is a fundamental problem in computational molecular biology. Our main results are as follows. 1. A linear time algorithm is presented for computing all the losses in duplications associated with the least common ancestor mapping from a gene tree to a species tree. This answers a problem raised recently by Eulenstein et al. (1998). 2. The complexity of finding an optimal species tree from gene trees is studied. The problem is proved to be NPhard for the duplication cost and for the mutation cost. Further, the concept of reconciled trees was introduced by Goodman et al. and formalized by Page for visualizing the relationship between gene and species trees. We show that constructing an optimal reconciled tree for gene trees is also NPhard. Finally, we consider a general reconstruction problem and show it to be NPhard even for the wellkn...
StraightLine Drawing Algorithms for Hierarchical Graphs and Clustered Graphs
 Algorithmica
, 1999
"... Hierarchical graphs and clustered graphs are useful nonclassical graph models for structured relational information. Hierarchical graphs are graphs with layering structures; clustered graphs are graphs with recursive clustering structures. Both have applications in CASE tools, software visualizatio ..."
Abstract

Cited by 59 (12 self)
 Add to MetaCart
Hierarchical graphs and clustered graphs are useful nonclassical graph models for structured relational information. Hierarchical graphs are graphs with layering structures; clustered graphs are graphs with recursive clustering structures. Both have applications in CASE tools, software visualization, and VLSI design. Drawing algorithms for hierarchical graphs have been well investigated. However, the problem of straightline representation has not been solved completely. In this paper, we answer the question: does every planar hierarchical graph admit a planar straightline hierarchical drawing? We present an algorithm that constructs such drawings in linear time. Also, we answer a basic question for clustered graphs, that is, does every planar clustered graph admit a planar straightline drawing with clusters drawn as convex polygons? We provide a method for such drawings based on our algorithm for hierarchical graphs.
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 ..."
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, &quot;What is the product s i°s i +1 ° j −1 j n 1... °s °s? &quot; 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, &quot; What is the product of the elements associated with the vertices along the path from u to v? &quot; 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.
Lineartime construction of suffix arrays
 In Proc. 14th Symposium on Combinatorial Pattern Matching (CPM ’03
, 2003
"... Abstract. The time complexity of suffix tree construction has been shown to be equivalent to that of sorting: O(n) for a constantsize alphabet or an integer alphabet and O(n logn) for a general alphabet. However, previous algorithms for constructing suffix arrays have the time complexity of O(n l ..."
Abstract

Cited by 54 (1 self)
 Add to MetaCart
Abstract. The time complexity of suffix tree construction has been shown to be equivalent to that of sorting: O(n) for a constantsize alphabet or an integer alphabet and O(n logn) for a general alphabet. However, previous algorithms for constructing suffix arrays have the time complexity of O(n logn) even for a constantsize alphabet. In this paper we present a lineartime algorithm to construct suffix arrays for integer alphabets, which do not use suffix trees as intermediate data structures during its construction. Since the case of a constantsize alphabet can be subsumed in that of an integer alphabet, our result implies that the time complexity of directly constructing suffix arrays matches that of constructing suffix trees. 1