首页> 外文会议>Combinatorial Pattern Matching >Fast Lightweight Suffix Array Construction and Checking
【24h】

Fast Lightweight Suffix Array Construction and Checking

机译:快速轻量级后缀数组的构造和检查

获取原文

摘要

We describe an algorithm that, for any v ∈ [2, n], constructs the suffix array of a string of length n in O(vn + n log n) time using O(v + n / v~1/2) space in addition to the input (the string) and the output (the suffix array). By setting v = log n, we obtain an O(n log n) time algorithm using O(n / (log n)~(1/2)) extra space. This solves the open problem stated by Manzini and Ferragina [ESA '02] of whether there exists a lightweight (sublinear extra space) O(n log n) time algorithm. The key idea of the algorithm is to first sort a sample of suffixes chosen using mathematical constructs called difference covers. The algorithm is not only lightweight but also fast in practice as demonstrated by experiments. Additionally, we describe fast and lightweight suffix array checkers, i.e., algorithms that check the correctness of a suffix array.
机译:我们描述了一种算法,对于任何v∈[2,n],使用O(v + n / v〜1/2)空间构造一个长度为n的后缀数组,该字符串在O(vn + n log n)时间中除了输入(字符串)和输出(后缀数组)。通过设置v = log n,我们使用O(n /(log n)〜(1/2))额外空间获得O(n log n)时间算法。这解决了Manzini和Ferragina [ESA '02]提出的开放问题,即是否存在轻量级(亚线性额外空间)O(n log n)时间算法。该算法的关键思想是首先对使用称为差异覆盖的数学结构选择的后缀样本进行排序。实验证明,该算法不仅轻巧,而且在实践中速度很快。此外,我们介绍了快速,轻量的后缀数组检查器,即检查后缀数组正确性的算法。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号