## Optimal Logarithmic Time Randomized Suffix Tree Construction (1996)

### Cached

### Download Links

- [www.cs.rutgers.edu]
- [www.dcs.warwick.ac.uk]
- DBLP

### Other Repositories/Bibliography

Venue: | In Proc 23rd ICALP |

Citations: | 14 - 3 self |

### BibTeX

@INPROCEEDINGS{Farach96optimallogarithmic,

author = {Martin Farach and S. Muthukrishnan},

title = {Optimal Logarithmic Time Randomized Suffix Tree Construction},

booktitle = {In Proc 23rd ICALP},

year = {1996},

pages = {550--561}

}

### OpenURL

### Abstract

The su#x tree of a string, the fundamental data structure in the area of combinatorial pattern matching, has many elegant applications. In this paper, we present a novel, simple sequential algorithm for the construction of su#x trees. We are also able to parallelize our algorithm so that we settle the main open problem in the construction of su#x trees: we give a Las Vegas CRCW PRAM algorithm that constructs the su#x tree of a binary string of length n in O(log n) time and O(n) work with high probability. In contrast, the previously known work-optimal algorithms, while deterministic, take# (log n) time.

### Citations

565 |
A space-economical suffix tree construction algorithm
- Mccreight
- 1976
(Show Context)
Citation Context ...) time suffix tree constructions, however, to date, though innovative, all such algorithms are variants of one another and continue to rely on the classical approaches of Weiner [Wei73] and McCreight =-=[McC76]-=-. Efficient parallel construction of suffix trees has also proven to be a challenge. In fact, a classical open problem in stringology is to design a fast, work-optimal parallel algorithm for construct... |

439 | Linear pattern matching algorithms
- Weiner
- 1973
(Show Context)
Citation Context ...f s. For many reasons, this is the fundamental data structure in combinatorial pattern matching. It has a compact O(n) space representation which has several elegant uses [Apo84]. Furthermore, Weiner =-=[Wei73]-=-, who introduced this powerful data structure, showed that Ts can be constructed in O(n) time. This sequential construction and its analysis are nontrivial. Considerable effort has been put into produ... |

311 | Efficient randomized pattern-matching algorithms - Karp, Rabin - 1987 |

289 | Parallel merge sort
- Cole
- 1988
(Show Context)
Citation Context ...rocedure, we can get a lower bound on k, the number of distinct elements. Further, if we find that this lower bound is large (say Ω(n 1/4 )), then we can sort the array directly, via Cole’s Merges=-=ort [Col86]-=-, and determine the output by directly computing the rank of the distinct elements via prefix sums. Otherwise, the lower bound is small and since we prove in Lemma 3.8 that almost all elements of the ... |

118 |
The myriad virtues of subword trees
- Apostolico
- 1985
(Show Context)
Citation Context ...ed trie of all the suffixes of s. For many reasons, this is the fundamental data structure in combinatorial pattern matching. It has a compact O(n) space representation which has several elegant uses =-=[Apo84]-=-. Furthermore, Weiner [Wei73], who introduced this powerful data structure, showed that Ts can be constructed in O(n) time. This sequential construction and its analysis are nontrivial. Considerable e... |

60 | Optimal and sublogarithmic time randomized parallel sorting algorithms - Rajasekaran, Reif - 1989 |

46 | Optimal bounds for decision problems on the CRCW PRAM
- Beame, Hastad
- 1989
(Show Context)
Citation Context ...nsitive sorting, each element is assigned its rank from amongst the distinct elements. This difference is crucial since the former problem has a lower bound of Ω(log n/log log n) time even when σ ==-= 2 [BH87]; i-=-n contrast, our algorithm for renaming takes O(1) time for any constant σ. In the sequential comparison model, renaming takes O(n log σ) time, even though σ is unknown. In the PRAM model, not knowi... |

45 | Towards a theory of nearly constant time parallel algorithms - Gil, Matias, et al. - 1991 |

43 | Faster Optimal Parallel Prefix sums and List Ranking - COLE, VISHKIN - 1989 |

41 | Parallel construction of a suffix tree with applications - Apostolico, Iliopoulos, et al. - 1988 |

38 | Highly parallelizable problems - Berkman, Breslauer, et al. - 1989 |

32 | The parallel simplicity of compaction and chaining - Ragde - 1990 |

31 | Ecient and Elegant Subword Tree Construction - Chen, Seiferas - 1985 |

26 | Symmetry breaking for suffix tree construction
- Sahinalp, Vishkin
- 1994
(Show Context)
Citation Context ...uses polynomial space. 1 Designing work-optimal algorithms for this problem remained a challenge. Recent results have shown that one can achieve work optimality at the expense of the running time. In =-=[SV94]-=-, a work optimal O(log 2 n) time algorithm was presented using polynomial space. In [Har94] a different work-optimal algorithm is presented which uses linear space; this algorithm takes O(log 4 n) tim... |

25 | Improved deterministic parallel integer sorting - Bhatt, Diks, et al. - 1991 |

23 | Using approximation algorithms to design parallel algorithms that may ignore processor allocation - Goodrich - 1991 |

20 | Recursive *-tree parallel data-structure - Berkman, Vishkin - 1989 |

18 | Optimal parallel suffix tree construction
- Hariharan
- 1997
(Show Context)
Citation Context ...llenge. Recent results have shown that one can achieve work optimality at the expense of the running time. In [SV94], a work optimal O(log 2 n) time algorithm was presented using polynomial space. In =-=[Har94]-=- a different work-optimal algorithm is presented which uses linear space; this algorithm takes O(log 4 n) time 2 . In this paper, we settle the following double challenge: our main result is a novel s... |

17 |
A fast probabilistic parallel sorting algorithm
- REISCHUK
- 1981
(Show Context)
Citation Context ...m is randomized and of Las Vegas type; it takes O(log σ) expected time and O(n log σ) expected work. Our algorithm is obtained by random sampling reminiscent of randomized parallel sorting algorithm=-=s [Rei81]. -=-Since σ is unknown and we seek an algorithm with time dependent on only σ, considerable technical difficulties arise in our setting which we overcome. Map. We describe the sequential version of our ... |

15 | The Power of Collision: Randomized Parallel Algorithms for Chaining and Integer Sorting - Raman - 1990 |

12 | A perfect parallel dictionary - Bast, Dietzfelbinger, et al. - 1992 |

10 | Large-scale assembly of DNA strings and space-efficient construction of suffix trees - Kosaraju, Delcher - 1995 |

6 | Optimal parallel dictionary matching and compression (extended abstract
- Farach, Muthukrishnan
- 1995
(Show Context)
Citation Context ...timal parallel algorithms for these applications of suffix trees are open. Only recently optimal use of suffix trees was developed for some applications, namely in dictionary matching and compression =-=[FM95]-=-. Using our suffix tree construction algorithms to feed the applications in [FM95] gives the fastest work optimal algorithms for the problems there. But optimal parallel usability of suffix trees for ... |

6 |
Parallel computation on 2--3 trees
- Paul, Vishkin, et al.
- 1983
(Show Context)
Citation Context ...ver unbounded alphabet to those over (integer) alphabet 1 · · · σ. Sequentially renaming can be done optimally using a balanced binary tree such as a 2–3 tree. Known parallel algorithms for 2–=-=3 trees [PVW83]-=-, however, do not give optimal parallel bounds for renaming. The best known algorithms for renaming use parallel sorting and therefore take O(n log n) work and O(log n) time. In this paper, we present... |

3 | Wigderson: Relations Between Concurrent-Write Models of Parallel Computation - Fich, Ragde, et al. - 1988 |

2 | Real-time suffix tree construction - Kosaraju - 1994 |

2 | Converting high probability into nearly constant time - with applications to parallel hashing - Matias, Vishkin - 1991 |

1 | Constant time parallel integer sorting - Hagerup - 1991 |