Deterministic Indexing for Packed Strings
Abstract
Given a string of length , the classic string indexing problem is to preprocess into a compact data structure that supports efficient subsequent pattern queries. In the \emph{deterministic} variant the goal is to solve the string indexing problem without any randomization (at preprocessing time or query time). In the \emph{packed} variant the strings are stored with several character in a single word, giving us the opportunity to read multiple characters simultaneously. Our main result is a new string index in the deterministic \emph{and} packed setting. Given a packed string of length over an alphabet , we show how to preprocess in (deterministic) time and space such that given a packed pattern string of length we can support queries in (deterministic) time where is the number of characters packed in a word of size . Our query time is always at least as good as the previous best known bounds and whenever several characters are packed in a word, i.e., , the query times are faster.
Cite
@article{arxiv.1612.01748,
title = {Deterministic Indexing for Packed Strings},
author = {Philip Bille and Inge Li Gørtz and Frederik Rye Skjoldjensen},
journal= {arXiv preprint arXiv:1612.01748},
year = {2016}
}