中文

当一个美元符号构成 BWT 时

数据结构与算法 2021-03-15 v3

摘要

Burrows-Wheeler 变换(BWT)是一种可逆的字符串变换,在文本压缩中起着核心作用,并且是许多现代生物信息学应用的基础。BWT 是字符的一种排列,通常比原字符串更易于压缩,并且相比原字符串能更高效地回答若干不同类型的查询。容易看出并非每个字符串都是 BWT 像,且 BWT 像的精确刻画已知。我们研究一个相关的组合问题。在许多应用中,会添加一个哨兵字符 dollar(美元符号)来标记字符串的结尾,因此以 dollar 结尾的字符串的 BWT 恰好包含一个 dollar 字符。给定一个字符串 w,我们询问在哪些位置(如果存在)插入 dollar 字符可使 w 变为以 dollar 结尾的某个单词的 BWT 像。我们证明这仅依赖于 w 的标准排列,并提出了一种 O(n log n) 时间算法来识别所有这样的位置,改进了朴素的二次时间算法。我们还给出了这些位置的组合刻画,并推导了它们的数量与取值的界。本文是 [Giuliani et al. ICTCS 2019] 的扩展版本。

关键词

引用

@article{arxiv.1908.09125,
  title  = {When a Dollar Makes a BWT},
  author = {Sara Giuliani and Zsuzsanna Lipták and Francesco Masillo and Romeo Rizzi},
  journal= {arXiv preprint arXiv:1908.09125},
  year   = {2021}
}

备注

This is the journal version of paper at ICTCS 2019 (20th Italian Conference on Theoretical Computer Science, 9-11 Sept. 2019, Como, Italy). Journal version appeared in TCS 2021