Abstract

Let α~\widetildeα be a length-LL cyclic sequence of characters from a size-KK alphabet A\mathcal{A} such that the number of occurrences of any length-mm string on A\mathcal{A} as a substring of α~\widetildeα is ⌊L/Km⌋\lfloor L / K^m \rfloor or ⌈L/Km⌉\lceil L / K^m \rceil. When L=KNL = K^N for any positive integer NN, α~\widetildeα is a de Bruijn sequence of order NN, and when L≠KNL \neq K^N, α~\widetildeα shares many properties with de Bruijn sequences. We describe an algorithm that outputs some α~\widetildeα for any combination of K≥2K \geq 2 and L≥1L \geq 1 in O(L)O(L) time using O(Llog⁡K)O(L \log K) space. This algorithm extends Lempel's recursive construction of a binary de Bruijn sequence. An implementation written in Python is available at https://github.com/nelloreward/pkl.

Explore this paper’s authors, topics and related work.

Building this map preview

BZPEER is loading the nearby papers, people, topics and institutions for this page.

Reviews 0

Write a reviewWrite

No reviews yet.

Discussion 0

Add a commentWrite

No comments yet.