:: алгоритмы  и методы :: :: олимпиадные задачи :: :: связь :: :: о сайте ::
Путь: Поиск. Строки и последовательности » Точный подстроки в строке » Алгоритм грубой силы
На правах рекламы
Для вас со скидками лом меди цена за кг по привлекательной цене.
  Алгоритм грубой силы



Автор: Thierry Lecroq
Перевод с английского - Кантор И.

Этот алгоритм заключается в проверке всех позиций текста с 0 по n - m на предмет совпадения с началом образца. Если совпадает - смотрим следующую букву и т.д.

Алгоритм грубой силы не нуждается в предварительной обработке и дополнительном пространстве.


  Реализация на Си



#define EOS '\0'

void BF(char *x, char *y, int m) {
 int i;
 
 /* Ищем до конца, вообще говоря можно до позиции n-m */
 for(i=0; *y!=EOS; i++, y++) if(memcmp(y,x,m) == 0) OUTPUT(i);
}