Доброго времени суток. Кто знает можно ли построить суффиксный массив имея суффиксный автомат за приемлемое время(<O(n^2)). А то автомат я как то понял а массив слабее.
| № | Пользователь | Рейтинг |
|---|---|---|
| 1 | Benq | 3792 |
| 2 | VivaciousAubergine | 3647 |
| 3 | Kevin114514 | 3611 |
| 4 | jiangly | 3583 |
| 5 | strapple | 3515 |
| 6 | tourist | 3470 |
| 7 | Radewoosh | 3415 |
| 8 | Um_nik | 3376 |
| 9 | maroonrk | 3361 |
| 10 | XVIII | 3345 |
| Страны | Города | Организации | Всё → |
| № | Пользователь | Вклад |
|---|---|---|
| 1 | Qingyu | 162 |
| 2 | adamant | 148 |
| 3 | Um_nik | 146 |
| 4 | Dominater069 | 143 |
| 5 | errorgorn | 141 |
| 6 | cry | 138 |
| 7 | Proof_by_QED | 136 |
| 8 | YuukiS | 135 |
| 9 | chromate00 | 134 |
| 10 | soullless | 133 |
Доброго времени суток. Кто знает можно ли построить суффиксный массив имея суффиксный автомат за приемлемое время(<O(n^2)). А то автомат я как то понял а массив слабее.
|
»
Scorpy
|
14 лет назад,
показать
#
|
|
»
Scorpy
|
14 лет назад,
скрыть
#
|
0
Откуда задача?
>>А то автомат я как то понял, а массив слабее. Построение через автомат не сильно поможет понять.
→
Ответить
|
|
»
Zlobober
|
14 лет назад,
показать (+1)
#
|
|
»
Zlobober
|
14 лет назад,
скрыть
#
|
+14
По-моему, вы гвозди микроскопом забиваете. Суфмассив и пишется быстро, и с ним понятно, как правило, что делать (вместо того, чтобы строить аццкие динамики по автомату), и работает быстро. Если непонятно, как строить его за nlogn, то скажу, что он строится нахаляву за nlogn^2 с помощью сортировки непосредственно циклических сдвигов. Но сравнение стоит делать не за линию, конечно, а за логарифм хешами. Вообще полезно научиться писать все суффиксные структуры. А превращение автомат -> массив это скорее интересная алгоритмическая задачка, чем то, что может реально пригодиться.
→
Ответить
|
|
»
»
1a1a1a
|
14 лет назад,
показать (+1)
#
|
|
»
»
1a1a1a
|
14 лет назад,
скрыть
#
^
|
+2
полезние суффиксные структуры, это бор, суфф. дерево, суфф. массив.. что еще ?
→
Ответить
|
|
»
»
»
Tranvick
|
14 лет назад,
показать
#
|
|
»
»
»
Tranvick
|
14 лет назад,
скрыть
#
^
|
+2
Суф. автомат - прикольная штука.
А больше вроде бы и ничего хорошего нет.
→
Ответить
|
|
»
niyaznigmatul
|
14 лет назад,
показать
#
|
|
»
niyaznigmatul
|
14 лет назад,
скрыть
#
|
+10
Я научился только суфф. автомат --> суфф. дерево --> суфф. массив все за O(n)
Но это не проще, чем просто суффиксный массив построить за O(nlogn)
→
Ответить
|
|
»
SergeiFedorov
|
14 лет назад,
показать
#
|
|
»
SergeiFedorov
|
14 лет назад,
скрыть
#
|
+7
Вся сложность алгоритма построения суф массива в цифровой сортировке на каждом шаге. Это тот момент, когда мы хотим отсортировать пары, соответствующие удлиненным суффиксам.
Если он сложно понимается, всегда можно взять и просто кинуть все пары в вектор и запустить sort. Получится, конечно, n log^2 n. Но на стандартных для таких задач 100000 символах он успевает без малейших проблем. А главное не надо думать. Кода получается меньше 10 строк.
→
Ответить
|
|
»
ibra
|
14 лет назад,
показать
#
|
|
»
ibra
|
14 лет назад,
скрыть
#
|
0
" А то автомат я как то понял а массив слабее. "
Ничего себе зверь. По мне так, суффиксный массив это НАМНОГО проще (и кстати менее применимо) чем суффиксный автомат.
→
Ответить
|
| Название |
|---|


