Longest common Abelian factors and large alphabets

Golnaz Badkobeh, Travis Gagie, Szymon Grabowski, Yuto Nakashima, Simon J. Puglisi, Shiho Sugimoto

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

3 Citations (Scopus)


Two strings X and Y are considered Abelian equal if the letters of X can be permuted to obtain Y (and vice versa). Recently, Alatabbi et al. (2015) considered the longest common Abelian factor problem in which we are asked to find the length of the longest Abelian-equal factor present in a given pair of strings. They provided an algorithm that uses O(σn2) time and O(σn) space, where n is the length of the pair of strings and σ is the alphabet size. In this paper we describe an algorithm that uses O(n2 log2 n log∗ n) time and O(n log2 n) space, significantly improving Alatabbi et al.’s result unless the alphabet is small. Our algorithm makes use of techniques for maintaining a dynamic set of strings under split, join, and equality testing (Melhorn et al., Algorithmica 17(2), 1997).

Original languageEnglish
Title of host publicationString Processing and Information Retrieval - 23rd International Symposium, SPIRE 2016, Proceedings
EditorsShunsuke Inenaga, Kunihiko Sadakane, Tetsuya Sakai
PublisherSpringer Verlag
Number of pages6
ISBN (Print)9783319460482
Publication statusPublished - 2016
Event23rd International Symposium on String Processing and Information Retrieval, SPIRE 2016 - Beppu, Japan
Duration: Oct 18 2016Oct 20 2016

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume9954 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349


Other23rd International Symposium on String Processing and Information Retrieval, SPIRE 2016

All Science Journal Classification (ASJC) codes

  • Theoretical Computer Science
  • Computer Science(all)


Dive into the research topics of 'Longest common Abelian factors and large alphabets'. Together they form a unique fingerprint.

Cite this