2D Lyndon Words and Applications
A Lyndon word is a primitive string which is lexicographically smallest among cyclic permutations of its characters. Lyndon words are used for constructing bases in free Lie algebras, constructing de Bruijn sequences, finding the lexicographically smallest or largest substring in a string, and succi...
Gespeichert in:
Hauptverfasser: | , |
---|---|
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | A Lyndon word is a primitive string which is lexicographically smallest among
cyclic permutations of its characters. Lyndon words are used for constructing
bases in free Lie algebras, constructing de Bruijn sequences, finding the
lexicographically smallest or largest substring in a string, and succinct
suffix-prefix matching of highly periodic strings. In this paper, we extend the
concept of the Lyndon word to two dimensions. We introduce the 2D Lyndon word
and use it to capture 2D horizontal periodicity of a matrix in which each row
is highly periodic, and to efficiently solve 2D horizontal suffix-prefix
matching among a set of patterns. This yields a succinct and efficient
algorithm for 2D dictionary matching.
We present several algorithms that compute the 2D Lyndon word that represents
a matrix. The final algorithm achieves linear time complexity even when the
least common multiple of the periods of the rows is exponential in the matrix
width. |
---|---|
DOI: | 10.48550/arxiv.1301.0103 |