Sparse suffix tree construction in small space

  • Authors:
  • Philip Bille;Johannes Fischer;Inge Li Gørtz;Tsvi Kopelowitz;Benjamin Sach;Hjalte Wedel Vildhøj

  • Affiliations:
  • Technical University of Denmark, Denmark;Institute of Theoretical Informatics, KIT, Germany;Technical University of Denmark, Denmark;Weizmann Institute of Science, Israel;University of Warwick, UK;Technical University of Denmark, Denmark

  • Venue:
  • ICALP'13 Proceedings of the 40th international conference on Automata, Languages, and Programming - Volume Part I
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

We consider the problem of constructing a sparse suffix tree (or suffix array) for b suffixes of a given text T of length n, using only O(b) words of space during construction. Attempts at breaking the naive bound of Ω(nb) time for this problem can be traced back to the origins of string indexing in 1968. First results were only obtained in 1996, but only for the case where the suffixes were evenly spaced in T. In this paper there is no constraint on the locations of the suffixes. We show that the sparse suffix tree can be constructed in O(nlog2b) time. To achieve this we develop a technique, which may be of independent interest, that allows to efficiently answer b longest common prefix queries on suffixes of T, using only O(b) space. We expect that this technique will prove useful in many other applications in which space usage is a concern. Our first solution is Monte-Carlo and outputs the correct tree with high probability. We then give a Las-Vegas algorithm which also uses O(b) space and runs in the same time bounds with high probability when $b = O(\sqrt{n})$. Furthermore, additional tradeoffs between the space usage and the construction time for the Monte-Carlo algorithm are given.