Более быстрый способ поиска строки, чем алгоритм Бойера Мура?
Есть ли более быстрый способ поиска строки в файле?
3 ответа
Решение
Посмотрите на этот сайт, где вы также можете увидеть время совпадения для каждого из алгоритмов.
Алгоритм Turbo Boyer-Moore работает быстрее, но требует больше места. http://www-igm.univ-mlv.fr/~lecroq/string/node15.html
Если вы знаете что-то конкретное о файле, могут быть более быстрые алгоритмы.
Например, если файл содержит много повторяющихся символов / шаблонов и вам нужно выполнить большое количество поисков, вы можете попробовать использовать деревья суффиксов: http://marknelson.us/1996/08/01/suffix-trees/
В зависимости от вашего файла и количества запросов, необходимых для этого файла, ответ на самый быстрый алгоритм поиска может измениться.