Требуются дополнительные подробности, прежде чем предлагать подход:
Вы ищете только целые слова или какую-либо подстроку?
Собираетесь ли вы искать много разных слов в одном и том же неизменном файле?
Знаете ли вы слова, которые вы хотите найти все сразу?
Существует множество эффективных (линейных) алгоритмов поиска строк. Если возможно, я бы предложил использовать тот, который уже был написан для вас.
http://en.wikipedia.org/wiki/String_searching_algorithm
Одна простая идея - использовать хеш скользящего окна с окном того же размера, что и строка поиска. Затем за один проход вы можете быстро проверить, где хеш окна соответствует хешу вашей строки поиска. Где оно совпадает, проверьте дважды, есть ли у вас реальное совпадение.