Алгоритмы на строках:Тикеты — различия между версиями
(Новая страница: «== Основные определения. Простые комбинаторные свойства слов == * [[Основные определения, с...») |
|||
Строка 1: | Строка 1: | ||
− | == Основные определения. Простые комбинаторные свойства слов == | + | == 1 Основные определения. Простые комбинаторные свойства слов == |
− | + | # [[Основные определения, связанные со строками]] | |
− | + | # [[Период и бордер, их связь]] | |
− | + | # [[Слово Фибоначчи]] | |
− | + | # [[Слово Туэ-Морса]] | |
− | + | # [[Декомпозиция Линдона]]<tex>^\star</tex> | |
− | + | # [[Алгоритм Ландау-Шмидта]]<tex>^\star</tex> | |
− | + | # [[Алгоритм Крочемора]]<tex>^\star</tex> | |
− | + | # [[Алгоритм Мейна-Лоренца]]<tex>^\star</tex> | |
− | + | # [[Алгоритм Манакера]]<tex>^\star</tex> | |
− | + | # [[Дерево палиндромов]]<tex>^\star</tex> | |
− | == [[Поиск подстроки в строке]] | + | == 2 Поиск подстроки в строке == |
− | === Точный поиск === | + | 0 [[Поиск подстроки в строке]] |
− | + | === 1 Точный поиск === | |
− | + | # [[Наивный алгоритм поиска подстроки в строке]] | |
− | + | # [[Поиск подстроки в строке с использованием хеширования. Алгоритм Рабина-Карпа]] | |
− | + | # [[Поиск наибольшей общей подстроки двух строк с использованием хеширования]] | |
− | + | # [[Префикс-функция]] | |
− | + | # [[Алгоритм Кнута-Морриса-Пратта]] | |
− | + | # [[Автомат Кнута-Морриса-Пратта]] | |
− | + | # [[Z-функция]] | |
− | + | # [[Бор]] | |
− | + | # [[Алгоритм Ахо-Корасик]] | |
− | + | # [[Суффиксный автомат]] | |
− | + | # [[Алгоритм Бойера-Мура]] | |
− | + | # [[Алгоритм Апостолико-Крочемора]]<tex>^\star</tex> | |
− | + | # [[Алгоритм Колусси]]<tex>^\star</tex> | |
− | + | # [[Алгоритм Райта]]<tex>^\star</tex> | |
− | + | # [[Алгоритм Shift-And]]<tex>^\star</tex> | |
− | + | # [[Двусторонний алгоритм]]<tex>^\star</tex> | |
+ | # [[Турбо-алгоритм Бойера-Мура]]<tex>^\star</tex> | ||
− | === Нечёткий поиск === | + | === 2 Нечёткий поиск === |
− | + | # [[Алгоритм Ландау-Вишкина (k несовпадений)]]<tex>^\star</tex> | |
− | + | # [[Алгоритм Ландау-Вишкина (k различий)]]<tex>^\star</tex> | |
− | == Суффиксное дерево == | + | == 3 Суффиксное дерево == |
− | + | # [[Суффиксный бор]] | |
− | + | # [[Сжатое суффиксное дерево]] | |
− | + | # [[Алгоритм Укконена]] | |
− | + | # [[Алгоритм МакКрейта]]<tex>^\star</tex> | |
− | + | # [[Алгоритм Фарача]]<tex>^\star</tex> | |
− | == Суффиксный массив == | + | == 4 Суффиксный массив == |
− | + | # [[Суффиксный массив]] | |
− | + | # [[Построение суффиксного массива с помощью стандартных методов сортировки]] | |
− | + | # [[Алгоритм цифровой сортировки суффиксов циклической строки]] | |
− | + | # [[Алгоритм Касаи и др.]] | |
− | + | # [[Алгоритм Карккайнена-Сандерса]] | |
− | + | # [[Алгоритм поиска подстроки в строке с помощью суффиксного массива]] | |
− | + | # [[Количество подпалиндромов в строке]]<tex>^\star</tex> |
Версия 22:24, 1 марта 2017
Содержание
1 Основные определения. Простые комбинаторные свойства слов
- Основные определения, связанные со строками
- Период и бордер, их связь
- Слово Фибоначчи
- Слово Туэ-Морса
- Декомпозиция Линдона
- Алгоритм Ландау-Шмидта
- Алгоритм Крочемора
- Алгоритм Мейна-Лоренца
- Алгоритм Манакера
- Дерево палиндромов
2 Поиск подстроки в строке
1 Точный поиск
- Наивный алгоритм поиска подстроки в строке
- Поиск подстроки в строке с использованием хеширования. Алгоритм Рабина-Карпа
- Поиск наибольшей общей подстроки двух строк с использованием хеширования
- Префикс-функция
- Алгоритм Кнута-Морриса-Пратта
- Автомат Кнута-Морриса-Пратта
- Z-функция
- Бор
- Алгоритм Ахо-Корасик
- Суффиксный автомат
- Алгоритм Бойера-Мура
- Алгоритм Апостолико-Крочемора
- Алгоритм Колусси
- Алгоритм Райта
- Алгоритм Shift-And
- Двусторонний алгоритм
- Турбо-алгоритм Бойера-Мура