Shortest Unique Palindromic Substring Queries on Run-Length Encoded Strings
For a string S, a palindromic substring S[i..j] is said to be a shortest unique palindromic substring ( $$ SUPS $$ ) for an interval [s, t] in S, if S[i..j] occurs exactly once in S, the interval [i, j] contains [s, t], and every palindromic substring containing [s, t] which is shorter than S[i..j]...
Saved in:
| Published in | Combinatorial Algorithms Vol. 11638; pp. 430 - 441 |
|---|---|
| Main Authors | , , , , |
| Format | Book Chapter |
| Language | English |
| Published |
Switzerland
Springer International Publishing AG
01.01.2019
Springer International Publishing |
| Series | Lecture Notes in Computer Science |
| Online Access | Get full text |
| ISBN | 3030250040 9783030250041 |
| ISSN | 0302-9743 1611-3349 |
| DOI | 10.1007/978-3-030-25005-8_35 |
Cover
| Summary: | For a string S, a palindromic substring S[i..j] is said to be a shortest unique palindromic substring ( $$ SUPS $$ ) for an interval [s, t] in S, if S[i..j] occurs exactly once in S, the interval [i, j] contains [s, t], and every palindromic substring containing [s, t] which is shorter than S[i..j] occurs at least twice in S. In this paper, we study the problem of answering $$ SUPS $$ queries on run-length encoded strings. We show how to preprocess a given run-length encoded string $$ RLE _{S}$$ of size m in O(m) space and $$O(m \log \sigma _{ RLE _{S}} + m \sqrt{\log m / \log \log m})$$ time so that all $$ SUPSs $$ for any subsequent query interval can be answered in $$O(\sqrt{\log m / \log \log m} + \alpha )$$ time, where $$\alpha $$ is the number of outputs, and $$\sigma _{ RLE _{S}}$$ is the number of distinct runs of $$ RLE _{S}$$ . |
|---|---|
| Bibliography: | Original Abstract: For a string S, a palindromic substring S[i..j] is said to be a shortest unique palindromic substring (\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$ SUPS $$\end{document}) for an interval [s, t] in S, if S[i..j] occurs exactly once in S, the interval [i, j] contains [s, t], and every palindromic substring containing [s, t] which is shorter than S[i..j] occurs at least twice in S. In this paper, we study the problem of answering \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$ SUPS $$\end{document} queries on run-length encoded strings. We show how to preprocess a given run-length encoded string \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$ RLE _{S}$$\end{document} of size m in O(m) space and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$O(m \log \sigma _{ RLE _{S}} + m \sqrt{\log m / \log \log m})$$\end{document} time so that all \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$ SUPSs $$\end{document} for any subsequent query interval can be answered in \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$O(\sqrt{\log m / \log \log m} + \alpha )$$\end{document} time, where \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$\alpha $$\end{document} is the number of outputs, and \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$\sigma _{ RLE _{S}}$$\end{document} is the number of distinct runs of \documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$ RLE _{S}$$\end{document}. |
| ISBN: | 3030250040 9783030250041 |
| ISSN: | 0302-9743 1611-3349 |
| DOI: | 10.1007/978-3-030-25005-8_35 |