Подстрока
Внешний вид
(перенаправлено с «Поиск подстроки»)
Подстрока — непустая связная часть строки: если — строка длины , то любая строка , где , является подстрокой длины . Если , то называется префиксом длины , если , то — суффикс длины .
Например, строки «кипед», «Вики», «дия» являются подстроками строки «Википедия»; при этом «Вики» — префиксом, а «дия» — суффиксом:
Википедия
|||||||||
||кипед||
|||| |||
Вики |||
дия
Поиск подстроки — одна из основополагающих алгоритмических задач информационного поиска, заключающаяся в нахождении позиции (индекса) первого вхождения образца. Существует обширный класс алгоритмов, реализующих поиск подстроки с различной эффективностью по времени и по памяти, среди них — алгоритмы Кнута — Морриса — Пратта, Бойера — Мура, Рабина — Карпа, Ахо — Корасик.
Литература
[править | править код]- Кормен, Т., Лейзерсон, Ч., Ривест, Р., Штайн, К. Алгоритмы: построение и анализ = Introduction to Algorithms / Под ред. И. В. Красикова. — 2-е изд. — М.: Вильямс, 2005. — 1296 с. — ISBN 5-8459-0857-4.
- Кнут Д. Э. Искусство программирования. Том 3. Сортировка и поиск = The Art of Computer Programming. Volume 3. Sorting and Searching / под ред. В. Т. Тертышного (гл. 5) и И. В. Красикова (гл. 6). — 2-е изд. — Москва: Вильямс, 2007. — Т. 3. — 832 с. — ISBN 5-8459-0082-1.