Optimal-Time Move Structure Construction
arXiv:2603.22147
Abstract
The move structure represents a permutation of by partitioning the domain into disjoint, contiguously permuted intervals, with being the minimum number of such intervals. This data structure occupies words of space and enables -time computation of given the interval that contains . For permutations where , this provides an efficient, compressed representation for navigation. While existing best -space construction approaches require -time, we present an optimal -time and space construction algorithm. This is achieved by replacing balanced search trees with pointer-based lists by introducing a bidirectional strategy that synchronizes construction of the structures for and its inverse in a single, unified pass. By applying this algorithm, we achieve the first optimal -time construction of the longest common prefix (LCP) array from a run-length-encoded Burrows-Wheeler transform (RLBWT) of runs in working space. Empirical evaluation on pangenome-scale data confirms that our move structure construction algorithm is consistently faster than the previous best, achieving speedups of up to with comparable memory usage.