Optimal in‐place suffix sorting

The suffix array is a fundamental data structure for many applications that involve string searching and data compression. Designing time/space-efficient suffix array construction algorithms has attracted significant attention and considerable advances have been made for the past 20 years. We obtain...

Full description

Saved in:
Bibliographic Details
Main Authors: LI, Zhize, LI, Jian, HUO, Hongwei
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2022
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/8690
https://ink.library.smu.edu.sg/context/sis_research/article/9693/viewcontent/IANDC22_suffixsorting.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-9693
record_format dspace
spelling sg-smu-ink.sis_research-96932024-03-28T08:45:06Z Optimal in‐place suffix sorting LI, Zhize LI, Jian HUO, Hongwei The suffix array is a fundamental data structure for many applications that involve string searching and data compression. Designing time/space-efficient suffix array construction algorithms has attracted significant attention and considerable advances have been made for the past 20 years. We obtain the \emph{first} in-place suffix array construction algorithms that are optimal both in time and space for (read-only) integer alphabets. Concretely, we make the following contributions: 1. For integer alphabets, we obtain the first suffix sorting algorithm which takes linear time and uses only $O(1)$ workspace (the workspace is the total space needed beyond the input string and the output suffix array). The input string may be modified during the execution of the algorithm, but should be restored upon termination of the algorithm. 2. We strengthen the first result by providing the first in-place linear time algorithm for read-only integer alphabets with $|\Sigma|=O(n)$ (i.e., the input string cannot be modified). This algorithm settles the open problem posed by Franceschini and Muthukrishnan in ICALP 2007. The open problem asked to design in-place algorithms in $o(n\log n)$ time and ultimately, in $O(n)$ time for (read-only) integer alphabets with $|\Sigma| \leq n$. Our result is in fact slightly stronger since we allow $|\Sigma|=O(n)$. 3. Besides, for the read-only general alphabets (i.e., only comparisons are allowed), we present an optimal in-place $O(n\log n)$ time suffix sorting algorithm, recovering the result obtained by Franceschini and Muthukrishnan which was an open problem posed by Manzini and Ferragina in ESA 2002. 2022-05-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/8690 info:doi/10.1016/j.ic.2021.104818 https://ink.library.smu.edu.sg/context/sis_research/article/9693/viewcontent/IANDC22_suffixsorting.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Suffix sorting Suffix array In-place Optimal time Databases and Information Systems
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Suffix sorting
Suffix array
In-place
Optimal time
Databases and Information Systems
spellingShingle Suffix sorting
Suffix array
In-place
Optimal time
Databases and Information Systems
LI, Zhize
LI, Jian
HUO, Hongwei
Optimal in‐place suffix sorting
description The suffix array is a fundamental data structure for many applications that involve string searching and data compression. Designing time/space-efficient suffix array construction algorithms has attracted significant attention and considerable advances have been made for the past 20 years. We obtain the \emph{first} in-place suffix array construction algorithms that are optimal both in time and space for (read-only) integer alphabets. Concretely, we make the following contributions: 1. For integer alphabets, we obtain the first suffix sorting algorithm which takes linear time and uses only $O(1)$ workspace (the workspace is the total space needed beyond the input string and the output suffix array). The input string may be modified during the execution of the algorithm, but should be restored upon termination of the algorithm. 2. We strengthen the first result by providing the first in-place linear time algorithm for read-only integer alphabets with $|\Sigma|=O(n)$ (i.e., the input string cannot be modified). This algorithm settles the open problem posed by Franceschini and Muthukrishnan in ICALP 2007. The open problem asked to design in-place algorithms in $o(n\log n)$ time and ultimately, in $O(n)$ time for (read-only) integer alphabets with $|\Sigma| \leq n$. Our result is in fact slightly stronger since we allow $|\Sigma|=O(n)$. 3. Besides, for the read-only general alphabets (i.e., only comparisons are allowed), we present an optimal in-place $O(n\log n)$ time suffix sorting algorithm, recovering the result obtained by Franceschini and Muthukrishnan which was an open problem posed by Manzini and Ferragina in ESA 2002.
format text
author LI, Zhize
LI, Jian
HUO, Hongwei
author_facet LI, Zhize
LI, Jian
HUO, Hongwei
author_sort LI, Zhize
title Optimal in‐place suffix sorting
title_short Optimal in‐place suffix sorting
title_full Optimal in‐place suffix sorting
title_fullStr Optimal in‐place suffix sorting
title_full_unstemmed Optimal in‐place suffix sorting
title_sort optimal in‐place suffix sorting
publisher Institutional Knowledge at Singapore Management University
publishDate 2022
url https://ink.library.smu.edu.sg/sis_research/8690
https://ink.library.smu.edu.sg/context/sis_research/article/9693/viewcontent/IANDC22_suffixsorting.pdf
_version_ 1795302173956898816