我们研究了滑动窗口的后缀树上的最长公共扩展(LCE)查询和字典最小化维护。主要难点在于,滑动后缀树以隐式的 Ukkonen 风格维护:当前窗口的一些后缀并未通过叶子节点表示。
我们证明最长的隐式(即非叶子)后缀引入了一个周期性代表映射,该映射可以在常数时间内将每个隐式后缀折叠为显式后缀叶子。结合叶子指针 [Leonard et al., PSC 2026] 和动态 LCA 数据结构 [Cole & Hariharan, SICOMP 2005],我们得到了一个线性空间的数据结构,能够以摊销常数时间进行窗口移动,并在最坏情况下以常数时间完成 LCE 查询。
对于最小化问题,LCE 结构提供了一个直接的精确解决方案,但其使用的机制比固定深度比较所需的要复杂。因此,我们给出了一个替代的无 LCE 算法,该算法在每次窗口移动时以常数时间报告最小化结果,构建在 BP 连接的后缀树 [Sumiyoshi et al., SPIRE 2024] 和标准的顺序维护数据结构(例如 [Bender et al., ESA 2002])之上。
博主点评: 本文提出的滑动后缀树结构在 LCE 查询和字典最小化维护方面具有重要的理论和实际价值,尤其是在处理动态文本时。通过引入新的数据结构和算法,显著提高了效率,值得进一步研究与应用。