Factorizing a string into squares in linear time

Yoshiaki Matsuoka, Shunsuke Inenaga, Hideo Bannai, Masayuki Takeda, Florin Manea

Research output: Chapter in Book/Report/Conference proceedingConference contribution

3 Citations (Scopus)

Abstract

A square factorization of a string w is a factorization of w in which each factor is a square. Dumitran et al. [SPIRE 2015, pp. 54-66] showed how to find a square factorization of a given string of length n in O(n log n) time, and they posed a question whether it can be done in O(n) time. In this paper, we answer their question positively, showing an O(n)-time algorithm for square factorization in the standard word RAM model with machine word size ω = Ω(log n). We also show an O(n + (n log2 n)/ω)-time (respectively, O(n log n)-time) algorithm to find a square factorization which contains the maximum (respectively, minimum) number of squares.

Original languageEnglish
Title of host publication27th Annual Symposium on Combinatorial Pattern Matching, CPM 2016
EditorsRoberto Grossi, Moshe Lewenstein
PublisherSchloss Dagstuhl- Leibniz-Zentrum fur Informatik GmbH, Dagstuhl Publishing
Pages27.1-27.12
ISBN (Electronic)9783959770125
DOIs
Publication statusPublished - Jun 1 2016
Event27th Annual Symposium on Combinatorial Pattern Matching, CPM 2016 - Tel Aviv, Israel
Duration: Jun 27 2016Jun 29 2016

Publication series

NameLeibniz International Proceedings in Informatics, LIPIcs
Volume54
ISSN (Print)1868-8969

Other

Other27th Annual Symposium on Combinatorial Pattern Matching, CPM 2016
CountryIsrael
CityTel Aviv
Period6/27/166/29/16

All Science Journal Classification (ASJC) codes

  • Software

Fingerprint Dive into the research topics of 'Factorizing a string into squares in linear time'. Together they form a unique fingerprint.

Cite this