Dynamic Suffix Array with Sub-linear update time and Poly-logarithmic Lookup Time [article]

Amihood Amir, Itai Boneh
<span title="2021-12-23">2021</span> <i > arXiv </i> &nbsp; <span class="release-stage" >pre-print</span>
The Suffix Array SA_S[1... n] of an n-length string S is a lexicographically sorted array of the suffixes of S. The suffix array is one of the most well known and widely used data structures in string algorithms. We present a data structure for maintaining a representation of the suffix array of a dynamic string which undergoes symbol substitutions, deletions, and insertions. For every string manipulation, our data structure can be updated in O(n^2/3) time (ignoring multiplicative
more &raquo; ... c factors) with n being the current length of the string. For an input query i∈ [1... n], our data structure reports SA_S[i] in O(log^5(n)) time. We also present a faster data structure, with O(√(n)) update time (ignoring multiplicative polylogarithmic factors), for maintaining the Inverted Suffix Array of a dynamic string undergoing symbol substitutions updates. For an input query i∈ [1... n], our data structure reports the i'th entry in the inverted suffix array in O(log^4(n)) time. Our data structures can be used to obtain sub-linear dynamic algorithms for several classical string problems for which efficient dynamic solutions were not previously known.
<span class="external-identifiers"> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/2112.12678v1">arXiv:2112.12678v1</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/vyhkhb4iafak7egvs6clpbapte">fatcat:vyhkhb4iafak7egvs6clpbapte</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20220106004453/https://arxiv.org/pdf/2112.12678v1.pdf" title="fulltext PDF download" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <div class="menu fulltext-thumbnail"> <img src="https://blobs.fatcat.wiki/thumbnail/pdf/b6/69/b669c4a00d5fcda97d38519ca07ab695a4c10120.180px.jpg" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/2112.12678v1" title="arxiv.org access"> <button class="ui compact blue labeled icon button serp-button"> <i class="file alternate outline icon"></i> arxiv.org </button> </a>