Блок задач

2. Алгоритмы

Сложность 5

Задача «Поиск подстроки в строке алгоритмом Рабина-Карпа (C)»

Реализовать функцию поиска подстроки в строке алгоритмом Рабина-Карпа.

char * my_strstr(char *haystack, const char *needle);

где * haystack – строка, в которой ищем («стог сена»), * needle – строка, которую ищем («иголка»).

требуется реализация хорошей хеш-функции, вычисляемой за O(1) от значения предыдущей

Обязательно наличие тестов.