中文

Tries 上回文与后缀树的在线计算

数据结构与算法 2026-01-26 v1

摘要

我们考虑计算trie中最大回文和不同回文的问题。trie是字符串的自然推广,可视为单路径树。在给定(静态)trie中,边标签来自可线性排序的字母表时,有线性时间离线算法可计算最大回文和不同回文[Mieno等,ISAAC 2022]。本文我们针对支持叶子添加和删除的动态trie,解决回文枚举问题。我们提出了在动态trie中枚举回文的第一个亚二次算法。对于最大回文,我们提出运行时间为O(Nmin(logh,σ))O(N \min(\log h, \sigma))且使用O(N)O(N)空间的算法,其中NN为trie中最大边数,σ\sigma为字母表大小,hh为trie的高度。对于不同回文,我们发展了基于不同算法框架的多个在线算法,包括使用EERTREE(即回文树)和trie后缀树的方法。这些算法支持trie中的叶子插入和删除,并实现不同的时间复杂度和空间复杂度权衡。此外,作为副产品,我们提出在线算法构建输入trie的后缀树和EERTREE,这两者均具有独立的兴趣。

关键词

引用

@article{arxiv.2601.16485,
  title  = {Online Computation of Palindromes and Suffix Trees on Tries},
  author = {Hiroki Shibata and Mitsuru Funakoshi and Takuya Mieno and Masakazu Ishihata and Yuto Nakashima and Shunsuke Inenaga and Hideo Bannai and Masayuki Takeda},
  journal= {arXiv preprint arXiv:2601.16485},
  year   = {2026}
}