A linear time algorithm for Shortest Cyclic Cover of Strings - LIRMM - Laboratoire d’Informatique, de Robotique et de Microélectronique de Montpellier Access content directly
Reports (Research Report) Year : 2015

A linear time algorithm for Shortest Cyclic Cover of Strings


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.
Fichier principal
Vignette du fichier
Greedy-linear-10-RR.pdf (392.86 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

lirmm-01240278 , version 1 (09-12-2015)


  • HAL Id : lirmm-01240278 , version 1


Bastien Cazaux, Eric Rivals. A linear time algorithm for Shortest Cyclic Cover of Strings. [Research Report] IBC; LIRMM. 2015. ⟨lirmm-01240278⟩
150 View
231 Download


Gmail Facebook X LinkedIn More