We study the problem of finding all k-periods of a length-n string S, presented as a data stream. S is said to have k-period p if its prefix of length n-p differs from its suffix of length n-p in at most k locations. We give a one-pass streaming algorithm that computes the k-periods of a string S using poly(k, log n) bits of space, for k-periods of length at most n/2. We also present a two-pass streaming algorithm that computes k-periods of S using poly(k, log n) bits of space, regardless of period length. We complement these results with comparable lower bounds.
@InProceedings{ergun_et_al:LIPIcs.APPROX-RANDOM.2017.42, author = {Erg\"{u}n, Funda and Grigorescu, Elena and Sadeqi Azer, Erfan and Zhou, Samson}, title = {{Streaming Periodicity with Mismatches}}, booktitle = {Approximation, Randomization, and Combinatorial Optimization. Algorithms and Techniques (APPROX/RANDOM 2017)}, pages = {42:1--42:21}, series = {Leibniz International Proceedings in Informatics (LIPIcs)}, ISBN = {978-3-95977-044-6}, ISSN = {1868-8969}, year = {2017}, volume = {81}, editor = {Jansen, Klaus and Rolim, Jos\'{e} D. P. and Williamson, David P. and Vempala, Santosh S.}, publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik}, address = {Dagstuhl, Germany}, URL = {https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.APPROX-RANDOM.2017.42}, URN = {urn:nbn:de:0030-drops-75911}, doi = {10.4230/LIPIcs.APPROX-RANDOM.2017.42}, annote = {Keywords: String algorithms, Streaming algorithms, Pattern matching, Randomized algorithms, Sublinear algorithms} }
Feedback for Dagstuhl Publishing