【问题标题】:unique substrings using suffix tree使用后缀树的唯一子串
【发布时间】:2012-10-03 07:15:46
【问题描述】:

对于长度为n的给定字符串S-

  • 查找S 的所有唯一子串的最佳算法不能小于O(n^2)。所以,最好的算法会给我们O(n^2)的复杂度。根据我的阅读,这可以通过为S 创建后缀树来实现。

可以在O(n) 时间创建 S 的后缀树。现在,我的问题是-

我们如何使用 S 的后缀树来获取 SO(n^2) 中的所有唯一子串?

【问题讨论】:

    标签: c# c++ algorithm substring suffix-tree


    【解决方案1】:

    尝试阅读有关后缀数组的信息:http://en.wikipedia.org/wiki/Suffix_array 这种方法比后缀树获取字符串中的子串要快。

    【讨论】:

    • 你能解释一下怎么做吗?
    【解决方案2】:

    可以通过尝试以最佳方式完成。将字符串添加到 trie 并从根遍历到节点。每个根到节点的路径都将表示字符串的后缀。取这些后缀的所有前缀。这些是唯一的子字符串。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-22
      • 1970-01-01
      • 2011-05-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-15
      相关资源
      最近更新 更多