Skip to main navigation Skip to search Skip to main content

LCP array construction using O(Sort(n)) (or less) I/Os

  • University of Helsinki

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

9 Scopus citations

Abstract

The suffix array, one of the most important data structures in modern string processing, needs to be augmented with the longestcommon- prefix (LCP) array in many applications. Their construction is often a major bottleneck especially when the data is too big for internal memory. While there are external memory algorithms that construct the suffix array and the LCP array simultaneously in the optimal I/O complexity of O(sort(n)), for several reasons it would be desirable to construct the suffix array first and then the LCP array from the suffix array in a separate stage. In this paper we describe the first algorithm that achieves O(sort(n)) I/O complexity for the LCP array construction stage and is not an extension of a suffix sorting algorithm. As a variant, we obtain a Monte Carlo algorithm that, given a sparse suffix array containing m < n suffixes in sorted order, computes the corresponding LCP array in O(scan(n) + sort(m) log(n/m)) I/Os if the suffix positions are evenly spaced, and in O(scan(n) + sort(m) log(n)) I/Os in general.

Original languageEnglish
Title of host publicationString Processing and Information Retrieval - 23rd International Symposium, SPIRE 2016, Proceedings
EditorsShunsuke Inenaga, Kunihiko Sadakane, Tetsuya Sakai
PublisherSpringer Verlag
Pages204-217
Number of pages14
ISBN (Print)9783319460482
DOIs
StatePublished - 2016
Event23rd International Symposium on String Processing and Information Retrieval, SPIRE 2016 - Beppu, Japan
Duration: Oct 18 2016Oct 20 2016

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume9954 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference23rd International Symposium on String Processing and Information Retrieval, SPIRE 2016
Country/TerritoryJapan
CityBeppu
Period10/18/1610/20/16

Fingerprint

Dive into the research topics of 'LCP array construction using O(Sort(n)) (or less) I/Os'. Together they form a unique fingerprint.

Cite this