603 research outputs found
Lyndon Array Construction during Burrows-Wheeler Inversion
In this paper we present an algorithm to compute the Lyndon array of a string
of length as a byproduct of the inversion of the Burrows-Wheeler
transform of . Our algorithm runs in linear time using only a stack in
addition to the data structures used for Burrows-Wheeler inversion. We compare
our algorithm with two other linear-time algorithms for Lyndon array
construction and show that computing the Burrows-Wheeler transform and then
constructing the Lyndon array is competitive compared to the known approaches.
We also propose a new balanced parenthesis representation for the Lyndon array
that uses bits of space and supports constant time access. This
representation can be built in linear time using words of space, or in
time using asymptotically the same space as
Efficient indexing of necklaces and irreducible polynomials over finite fields
We study the problem of indexing irreducible polynomials over finite fields,
and give the first efficient algorithm for this problem. Specifically, we show
the existence of poly(n, log q)-size circuits that compute a bijection between
{1, ... , |S|} and the set S of all irreducible, monic, univariate polynomials
of degree n over a finite field F_q. This has applications in pseudorandomness,
and answers an open question of Alon, Goldreich, H{\aa}stad and Peralta[AGHP].
Our approach uses a connection between irreducible polynomials and necklaces
( equivalence classes of strings under cyclic rotation). Along the way, we give
the first efficient algorithm for indexing necklaces of a given length over a
given alphabet, which may be of independent interest
Generation, Ranking and Unranking of Ordered Trees with Degree Bounds
We study the problem of generating, ranking and unranking of unlabeled
ordered trees whose nodes have maximum degree of . This class of trees
represents a generalization of chemical trees. A chemical tree is an unlabeled
tree in which no node has degree greater than 4. By allowing up to
children for each node of chemical tree instead of 4, we will have a
generalization of chemical trees. Here, we introduce a new encoding over an
alphabet of size 4 for representing unlabeled ordered trees with maximum degree
of . We use this encoding for generating these trees in A-order with
constant average time and O(n) worst case time. Due to the given encoding, with
a precomputation of size and time O(n^2) (assuming is constant), both
ranking and unranking algorithms are also designed taking O(n) and O(nlogn)
time complexities.Comment: In Proceedings DCM 2015, arXiv:1603.0053
- …