Строки: суффиксный массив (22 апреля 2016)
- Суффиксный массив за O(nlogn)
- Сортируем циклические сдвиги строки s#
- За O(Σ + n2) цифровой сортировкой
- От k переходим не к k+1, а к 2k
- Учимся писать
- Алгоритм Касаи LCP за O(n)
- Алгоритм поиска подстроки в тексте за O(|s| + log|T|)
--- Перерыв ---
- Суффиксный массив за O(n). Алгоритм Каркайнена-Сандерса
- Условие входа в функцию: дана строка длины n, над алфавитом не более 2n.
- Новый алфавит − тройка подряд идущих символов. За O(n) цифровой сортировкой получили номера символов
- SA(s): SA(s0s1) + Sort(s2) + Merge(s0s1, s2)
- Оценки времени: T(n) = O(n) + T(2n/3) + O(n) + O(n) = O(n)