Доброго времени суток. Кто знает можно ли построить суффиксный массив имея суффиксный автомат за приемлемое время(<O(n^2)). А то автомат я как то понял а массив слабее.
| № | Пользователь | Рейтинг |
|---|---|---|
| 1 | Benq | 3676 |
| 2 | Kevin114514 | 3657 |
| 3 | jiangly | 3638 |
| 4 | turmax | 3442 |
| 5 | tourist | 3380 |
| 6 | Um_nik | 3353 |
| 7 | strapple | 3350 |
| 8 | squareOf105 | 3346 |
| 9 | heuristica | 3322 |
| 10 | maroonrk | 3310 |
| Страны | Города | Организации | Всё → |
| № | Пользователь | Вклад |
|---|---|---|
| 1 | Qingyu | 158 |
| 2 | nik_exists | 151 |
| 3 | maspy | 150 |
| 4 | AmShZ | 143 |
| 4 | Um_nik | 143 |
| 6 | Errichto | 139 |
| 7 | adamant | 137 |
| 8 | BledDest | 133 |
| 8 | maroonrk | 133 |
| 10 | Proof_by_QED | 131 |
Доброго времени суток. Кто знает можно ли построить суффиксный массив имея суффиксный автомат за приемлемое время(<O(n^2)). А то автомат я как то понял а массив слабее.
|
»
Scorpy
|
15 лет назад,
показать
#
|
|
»
Scorpy
|
15 лет назад,
скрыть
#
|
0
Откуда задача?
>>А то автомат я как то понял, а массив слабее. Построение через автомат не сильно поможет понять.
→
Ответить
|
|
»
Zlobober
|
15 лет назад,
показать (+1)
#
|
|
»
Zlobober
|
15 лет назад,
скрыть
#
|
+14
По-моему, вы гвозди микроскопом забиваете. Суфмассив и пишется быстро, и с ним понятно, как правило, что делать (вместо того, чтобы строить аццкие динамики по автомату), и работает быстро. Если непонятно, как строить его за nlogn, то скажу, что он строится нахаляву за nlogn^2 с помощью сортировки непосредственно циклических сдвигов. Но сравнение стоит делать не за линию, конечно, а за логарифм хешами. Вообще полезно научиться писать все суффиксные структуры. А превращение автомат -> массив это скорее интересная алгоритмическая задачка, чем то, что может реально пригодиться.
→
Ответить
|
|
»
»
1a1a1a
|
15 лет назад,
показать (+1)
#
|
|
»
»
1a1a1a
|
15 лет назад,
скрыть
#
^
|
+2
полезние суффиксные структуры, это бор, суфф. дерево, суфф. массив.. что еще ?
→
Ответить
|
|
»
»
»
Tranvick
|
15 лет назад,
показать
#
|
|
»
»
»
Tranvick
|
15 лет назад,
скрыть
#
^
|
+2
Суф. автомат - прикольная штука.
А больше вроде бы и ничего хорошего нет.
→
Ответить
|
|
»
niyaznigmatul
|
15 лет назад,
показать
#
|
|
»
niyaznigmatul
|
15 лет назад,
скрыть
#
|
+10
Я научился только суфф. автомат --> суфф. дерево --> суфф. массив все за O(n)
Но это не проще, чем просто суффиксный массив построить за O(nlogn)
→
Ответить
|
|
»
SergeiFedorov
|
15 лет назад,
показать
#
|
|
»
SergeiFedorov
|
15 лет назад,
скрыть
#
|
+7
Вся сложность алгоритма построения суф массива в цифровой сортировке на каждом шаге. Это тот момент, когда мы хотим отсортировать пары, соответствующие удлиненным суффиксам.
Если он сложно понимается, всегда можно взять и просто кинуть все пары в вектор и запустить sort. Получится, конечно, n log^2 n. Но на стандартных для таких задач 100000 символах он успевает без малейших проблем. А главное не надо думать. Кода получается меньше 10 строк.
→
Ответить
|
|
»
ibra
|
15 лет назад,
показать
#
|
|
»
ibra
|
15 лет назад,
скрыть
#
|
0
" А то автомат я как то понял а массив слабее. "
Ничего себе зверь. По мне так, суффиксный массив это НАМНОГО проще (и кстати менее применимо) чем суффиксный автомат.
→
Ответить
|
| Название |
|---|


