Skip to main content
QUICK REVIEW

[論文レビュー] Longest Unbordered Factor in Quasilinear Time

Tomasz Kociumaka, Ritu Kundu|arXiv (Cornell University)|Jan 1, 2018
Algorithms and Data Compression参考文献 12被引用数 1
ひとこと要約

本稿では、一般のアルファベット上での任意の語に対して、長さがO(n log n)のランダム化アルゴリズムと、O(n log n log² log n)の決定的バージョンを用いた、長さが最大の境界なし因子配列を計算するためのアルゴリズムを提示する。このアルゴリズムは、語内の各位置に対して、その位置から始まる境界なし因子の最長長さを効率的に特定する。整数アルファベットに対する従来のO(n^1.5)時間の上限を著しく上回り、成功因子とフックポインタに基づく新しい組合せ的アプローチにより、すべてのアルファベットに拡張された解決策が得られる。

ABSTRACT

A border u of a word w is a proper factor of w occurring both as a prefix and as a suffix. The maximal unbordered factor of w is the longest factor of w which does not have a border. Here an O(n log n)-time with high probability (or O(n log n log^2 log n)-time deterministic) algorithm to compute the Longest Unbordered Factor Array of w for general alphabets is presented, where n is the length of w. This array specifies the length of the maximal unbordered factor starting at each position of w. This is a major improvement on the running time of the currently best worst-case algorithm working in O(n^{1.5}) time for integer alphabets [Gawrychowski et al., 2015].

研究の動機と目的

  • 語内の各位置に対して、その位置から始まる境界なし因子の最長長さを指定する長さが最大の境界なし因子配列を計算すること。
  • 整数アルファベットに対しては従来のO(n^1.5)時間の最悪ケース時間計算量を克服するため、新しい組合せ的アプローチを導入すること。
  • 整数アルファベットにとどまらず、一般のアルファベットに対しても解を拡張し、任意のアルファベットに対して効率的な計算を可能にすること。
  • 従来の最良のアルゴリズムが最大の境界なし因子のみを計算していたのに対し、大幅な時間計算量の改善を達成すること。
  • 高確率でO(n log n)時間のランダム化アルゴリズムと、O(n log n log² log n)時間の決定的バージョンの両方を提供すること。

提案手法

  • 長さが最大の後続因子(LSFℓ および LSFr)の概念を用いて、境界なし因子の候補リファレンスを事前に計算する。
  • 因子を境界を導入せずに拡張できる最初の位置を追跡するため、HOOK配列を維持する。
  • 各位置 i を右から左へ向かって処理し、LSFℓ および LSFr からの参照を用いた動的計画法により、i から始まる境界なし因子の最長長さを計算する。
  • 潜在的リファレンスのチェックを用いて HOOK 配列を更新し、重複した再計算を回避する。
  • 境界なし語の組合せ的性質と、境界と周期の双対性を活用して、関連する比較回数を制限する。
  • ランダム化バージョンでは、境界なし因子長の期待値の上限を用いて、高確率でO(n log n)時間で実行可能である。

実験結果

リサーチクエスチョン

  • RQ1一般のアルファベットに対して、長さが最大の境界なし因子配列を二次未満の時間で計算できるか?
  • RQ2すべての位置における長さが最大の境界なし因子の完全な配列を計算する最適な時間計算量は何か?
  • RQ3境界と周期の双対性をどのように活用して、より高速なアルゴリズムを設計できるか?
  • RQ4ランダム化アルゴリズムは、一般のアルファベットに対して高確率でO(n log n)時間の計算量を達成できるか?
  • RQ5長さが最大の境界なし因子配列の決定的時間計算量は何か?また、ランダム化バージョンと競合可能な時間計算量にできるか?

主な発見

  • 本稿では、任意のアルファベットに対して、高確率でO(n log n)時間で長さが最大の境界なし因子配列を計算するランダム化アルゴリズムを提示する。
  • 決定的バージョンのアルゴリズムは、O(n log n log² log n)時間で実行され、最悪ケースの保証を提供する。
  • 整数アルファベットに対しては、従来のO(n^1.5)時間の上限を上回り、最大の境界なし因子のみを計算していた従来のアルゴリズムとは異なり、完全な配列を計算できる。
  • このアプローチは一般性を持ち、nに多項式的に依存する整数アルファベットに限定されない任意のアルファベットに適用可能である。
  • アルゴリズムの最悪ケース動作は、最悪入力族においてΘ(n log n)の合計スタックサイズで制限され、理論的な時間計算量の上限が裏付けられる。
  • 右から左へ境界なし因子の情報を効率的に伝搬するため、成功因子とフックポインタを組み合わせた新しいデータ構造を用いている。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。