In this paper, we present a new data structure called the packed compact trie (packed c-trie) which stores a set of strings of total length in $n \log\sigma + O(k \log n)$ bits of space and supports fast pattern matching queries and updates, where is the size of an alphabet. Assume that letters are packed in a single machine word on the standard word RAM model, and let denote the query and update times of the dynamic predecessor/successor data structure of our choice which stores integers from universe in bits of space. Then, given a string of length , our packed c-tries support pattern matching queries and insert/delete operations in worst-case time and in expected time. Our experiments show that our packed c-tries are faster than the standard compact tries (a.k.a. Patricia trees) on real data sets. As an application of our packed c-trie, we show that the sparse suffix tree for a string of length over prefix codes with sampled positions, such as evenly-spaced and word delimited sparse suffix trees, can be constructed online in worst-case time and expected time with $n \log \sigma + O(k \log n)k = O(\frac{n}{\alpha})$, by using the state-of-the-art dynamic predecessor/successor data structures, we obtain sub-linear time construction algorithms using only bits of space in both cases. We also discuss an application of our packed c-tries to online LZD factorization.

生成讲解博客的中文版本

生成AI智能校验的中文版本