中文

滑动后缀树上边标签与叶指针的常数时间维护

数据结构与算法 2024-03-01 v3

摘要

对于大小为σ\sigma的字母表上输入文本TT及其滑动窗口WW,滑动后缀树(Fiala & Greene, 1989)可在O(Tlogσ)O(|T| \log \sigma)时间和O(W)O(|W|)空间内维护。此前实现该结果的两种方法可分为Fiala与Greene(1989)及Larsson(1996, 1999)的基于信用方法,或Senft(2005)提出的基于批处理方法。Brodnik与Jekovec(2018)表明滑动后缀树可补充叶指针以查找当前窗口中在线查询模式的所有出现位置,且叶指针也可通过基于信用的论证维护。基于信用方法的主要难点在于维护表示各边的索引对。本文中,我们展示有效的边索引对可从叶指针常数时间导出,从而将边索引对的维护归约为叶指针的维护。我们进一步提出一种不使用基于信用论证维护叶指针的新简易方法。缺乏基于信用论证使得正确性证明比基于信用方法更简洁,后者分析起初有误(Senft 2005)。此外,我们的方法将每次叶插入与删除的叶指针与边标签维护最坏情况时间从Θ(W)\Theta(|W|)降至O(1)O(1)

关键词

引用

@article{arxiv.2307.01412,
  title  = {Constant-time edge label and leaf pointer maintenance on sliding suffix trees},
  author = {Laurentius Leonard and Shunsuke Inenaga and Hideo Bannai and Takuya Mieno},
  journal= {arXiv preprint arXiv:2307.01412},
  year   = {2024}
}