Толи я чего-то не понимаю, но для составной подстроки: a1b2
построив СА
Array
(
[0] => Array
(
[len] => 0
[link] => -1
[next] => Array
(
[a] => 1
[1] => 2
[b] => 3
[2] => 4
)
)
[1] => Array
(
[len] => 1
[link] => 0
[next] => Array
(
[1] => 2
)
)
[2] => Array
(
[len] => 2
[link] => 0
[next] => Array
(
[b] => 3
)
)
[3] => Array
(
[len] => 3
[link] => 0
[next] => Array
(
[2] => 4
)
)
[4] => Array
(
[len] => 4
[link] => 0
)
)
мы получим достижимости из узлов 1,2,3 для перовго разделителя(1) и 1,3,4 - для второго(2). Далее казалось бы нужно построить суффикс для узла 3? Что уже наверное неправильно, так длина суффикса в этой вершине 3, а мы явно видим, что здесь нет общей строки. Я хотел было сначала составлять суффикс, перебирая все вершины для поиска ребер за исключением разделителей и уменьшая длину len за итерацию, однако в этом я тоже не уверен.
Помощь нужна срочно)