Более быстрый способ поиска строки, чем алгоритм Бойера Мура?

Есть ли более быстрый способ поиска строки в файле?

3 ответа

Решение

Посмотрите на этот сайт, где вы также можете увидеть время совпадения для каждого из алгоритмов.

Алгоритм Turbo Boyer-Moore работает быстрее, но требует больше места. http://www-igm.univ-mlv.fr/~lecroq/string/node15.html

Если вы знаете что-то конкретное о файле, могут быть более быстрые алгоритмы.

Например, если файл содержит много повторяющихся символов / шаблонов и вам нужно выполнить большое количество поисков, вы можете попробовать использовать деревья суффиксов: http://marknelson.us/1996/08/01/suffix-trees/

В зависимости от вашего файла и количества запросов, необходимых для этого файла, ответ на самый быстрый алгоритм поиска может измениться.

Другие вопросы по тегам