2000 character limit reached
Ranking and unranking bordered and unbordered words (2305.03000v2)
Published 4 May 2023 in cs.DS and cs.DM
Abstract: A \emph{border} of a word $w$ is a word that is both a non-empty proper prefix and suffix of $w$. If $w$ has a border, then it is said to be \emph{bordered}; otherwise, it is said to be \emph{unbordered}. The main results of this paper are the first algorithms to rank and unrank length-$n$ bordered and unbordered words over a $k$-letter alphabet. We show that, under the unit-cost RAM model, ranking bordered and unbordered words can be done in $O(kn3)$ time using $O(n)$ space, and unranking them can be done in $O(n4k\log k)$ time using $O(n)$ space.