Please use this identifier to cite or link to this item: http://bura.brunel.ac.uk/handle/2438/29266
Title: Sparse Suffix and LCP Array: Simple, Direct, Small, and Fast
Authors: Ayad, LAK
Loukides, G
Pissis, SP
Verbeek, H
Keywords: suffix array;LCP array;suffix sorting;sparse suffix sorting;data structures and algorithms (cs.DS)
Issue Date: 6-Mar-2024
Publisher: Springer Nature
Citation: Ayad, L.A.K. et al. (2024) 'Sparse Suffix and LCP Array: Simple, Direct, Small, and Fast', in: Soto, J.A. and Wiese, A. (eds.) LATIN 2024: Theoretical Informatics. LATIN 2024. (Lecture Notes in Computer Science Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), vol. 14578). Cham, Switzerland, Springer, pp. 162 - 177. doi: 10.1007/978-3-031-55598-5_11.
Abstract: Sparse suffix sorting is the problem of sorting b=o(n) suffixes of a string of length n. Efficient sparse suffix sorting algorithms have existed for more than a decade. Despite the multitude of works and their justified claims for applications in text indexing, the existing algorithms have not been employed by practitioners. Arguably this is because there are no simple, direct, and efficient algorithms for sparse suffix array construction. We provide two new algorithms for constructing the sparse suffix and LCP arrays that are simultaneously simple, direct, small, and fast. In particular, our algorithms are: simple in the sense that they can be implemented using only basic data structures; direct in the sense that the output arrays are not a byproduct of constructing the sparse suffix tree or an LCE data structure; fast in the sense that they run in O(nlogb) time, in the worst case, or in O(n) time, when the total number of suffixes with an LCP value greater than 2⌊lognb⌋+1−1 is in O(b/logb), matching the time of the optimal yet much more complicated algorithms [Gawrychowski and Kociumaka, SODA 2017; Birenzwige et al., SODA 2020]; and small in the sense that they can be implemented using only 8b+o(b) machine words. Our algorithms are simplified, yet non-trivial, space-efficient adaptations of the Monte Carlo algorithm by I et al. for constructing the sparse suffix tree in O(nlogb) time [STACS 2014]. We also provide proof-of-concept experiments to justify our claims on simplicity and efficiency.
Description: A preprint version of this article is available at arXiv:2310.09023v1 [cs.DS] (https://arxiv.org/abs/2310.09023) under a Creative Commons Attribution 4.0 International License (https://creativecommons.org/licenses/by/4.0/). It has not been certified by peer review.
URI: https://bura.brunel.ac.uk/handle/2438/29266
DOI: https://doi.org/10.1007/978-3-031-55598-5_11
ISBN: 978-3-031-55597-8 (pbk)
978-3-031-55598-5 (ebk)
ISSN: 0302-9743
Other Identifiers: ORCiD: Lorraine A. K. Ayad https://orcid.org/0000-0003-0846-2616
Appears in Collections:Dept of Computer Science Research Papers

Files in This Item:
File Description SizeFormat 
FullText.pdfCopyright © 2024 The Author(s), under exclusive license to Springer Nature Switzerland AG. This version of the article has been accepted for publication, after peer review (when applicable) and is subject to Springer Nature’s AM terms of use, but is not the Version of Record and does not reflect post-acceptance improvements, or any corrections. The Version of Record is available online at: https://doi.org/10.1007/978-3-031-55598-5_11 (see: https://www.springernature.com/gp/open-research/policies/book-policies).439.6 kBAdobe PDFView/Open


Items in BURA are protected by copyright, with all rights reserved, unless otherwise indicated.