Linear Algorithms for Computing the Lyndon Border Array and the Lyndon Suffix Array

Authors Organisations
  • Ali Alatabbi(Author)
    King's College London
  • Jacqueline Daykin(Author)
    King's College London
    Royal Holloway, University of London
  • M. Sohel Rahman(Author)
    Bangladesh University of Engineering and Technology
Type Working paper
Original languageEnglish
Number of pages17
Publication statusPublished - 23 Jun 2015
Externally publishedYes
Permanent link
View graph of relations
Citation formats


We consider the problem of finding repetitive structures and inherent patterns in a given string $\s{s}$ of length n over a finite totally ordered alphabet. A border $\s{u}$ of a string $\s{s}$ is both a prefix and a suffix of $\s{s}$ such that $\s{u} \not= \s{s}$. The computation of the border array of a string $\s{s}$, namely the borders of each prefix of $\s{s}$, is strongly related to the string matching problem: given a string $\s{w}$, find all of its occurrences in $\s{s}$. A {\itshape Lyndon word} is a primitive word (i.e., it is not a power of another word) which is minimal for the lexicographical order of its conjugacy class (i.e., the set of words obtained by cyclic rotations of the letters). In this paper we combine these concepts to introduce the \emph{Lyndon Border Array} Lβ of $\s{s}$, whose i-th entry $\mathcal L \beta(\s{s})[i]$ is the length of the longest border of $\s{s}[1 \dd i]$ which is also a Lyndon word. We propose linear-time and linear-space algorithms for computing $\mathcal L \beta (\s{s})$. %in the case of both binary and bounded alphabets. Further, we introduce the \emph{Lyndon Suffix Array}, and by modifying the efficient suffix array technique of Ko and Aluru \cite{KA03} outline a linear time and space algorithm for its construction.