后缀树和最长的重复子串问题

当在字符串' AEKEAAEKEAAEKEA$ '上运行算法寻找最长的子字符串并且至少有3次发生时,后缀树中的所有节点都有最多2个分支,这怎么可能?

正确的结果应该是子串' AEKEA '。

您可以在联机后缀树构建器中轻松查看树

我只是遵循维基百科的描述:

“通过首先对树进行预处理来计算每个内部节点的叶子后代的数量,然后找到具有至少k个子代的最深节点”,找到至少出现k次的最长子串的问题“

我在这里错过了什么?

谢谢。


我不认为这个网站是正确的。 当我通过我的后缀树运行'AEKEAAEKEAAEKEA'时,我得到以下树。

└── (0)
    ├── (27) $
    ├── (6) A
    │   ├── (26) $
    │   ├── (16) AEKEA
    │   │   ├── (17) $
    │   │   └── (7) AEKEA$
    │   └── (18) EKEA
    │       ├── (19) $
    │       └── (8) AEKEA
    │           ├── (9) $
    │           └── (1) AEKEA$
    ├── (4) E
    │   ├── (24) A
    │   │   ├── (25) $
    │   │   └── (14) AEKEA
    │   │       ├── (15) $
    │   │       └── (5) AEKEA$
    │   └── (20) KEA
    │       ├── (21) $
    │       └── (10) AEKEA
    │           ├── (11) $
    │           └── (2) AEKEA$
    └── (22) KEA
        ├── (23) $
        └── (12) AEKEA
            ├── (13) $
            └── (3) AEKEA$

正如你可以从这个分支看到的,你已经找到了3次出现的最长的子字符串。

└── (0)
    ├── (27) $
    ├── (6) A
    │   ├── (26) $
    │   ├── (16) AEKEA
    │   │   ├── (17) $
    │   │   └── (7) AEKEA$
    │   └── (18) EKEA
    │       ├── (19) $
    │       └── (8) AEKEA
    │           ├── (9) $
    │           └── (1) AEKEA$
链接地址: http://www.djcxy.com/p/40109.html

上一篇: Suffix Tree and Longest Repeated Substring issue

下一篇: suffix tree construction