A linear time algorithm for Shortest Cyclic Cover of Strings

Bastien Cazaux 1, 2 Eric Rivals 2, 1
1 MAB - Méthodes et Algorithmes pour la Bioinformatique
LIRMM - Laboratoire d'Informatique de Robotique et de Microélectronique de Montpellier
Abstract : Merging words according to their overlap yields a superstring. This basic operation allows to infer long strings from a collection of short pieces, as in genome assembly. To capture a maximum of overlaps, the goal is to infer the shortest superstring of a set of input words. The Shortest Cyclic Cover of Strings (SCCS) problem asks, instead of a single linear superstring, for a set of cyclic strings that contain the words as substrings and whose sum of lengths is minimal. SCCS is used as a crucial step in polynomial time approximation algorithms for the notably hard Shortest Superstring problem, but it is solved in cubic time. The cyclic strings are then cut and merged to build a linear superstring. SCCS can also be solved by a greedy algorithm. Here, we propose a linear time algorithm for solving SCCS based on a Eulerian graph that captures all greedy solutions in linear space. Because the graph is Eulerian, this algorithm can also find a greedy solution of SCCS with the least number of cyclic strings. This has implications for solving certain instances of the Shortest linear or cyclic Superstring problems.
Complete list of metadatas

Cited literature [20 references]  Display  Hide  Download

https://hal-lirmm.ccsd.cnrs.fr/lirmm-01525995
Contributor : Eric Rivals <>
Submitted on : Monday, May 22, 2017 - 3:08:22 PM
Last modification on : Tuesday, July 9, 2019 - 2:41:06 PM
Long-term archiving on: Wednesday, August 23, 2017 - 3:52:43 PM

File

Cazaux-Rivals-JDA-2016.pdf
Publication funded by an institution

Identifiers

Collections

Citation

Bastien Cazaux, Eric Rivals. A linear time algorithm for Shortest Cyclic Cover of Strings. Journal of Discrete Algorithms, Elsevier, 2016, 37, pp.56-67. ⟨10.1016/j.jda.2016.05.001⟩. ⟨lirmm-01525995⟩

Share

Metrics

Record views

1638

Files downloads

343