Algoritmo de Aho-Corasick
# Algoritmo de Aho-Corasick

O algoritmo de Aho-Corasick é um algoritmo de pesquisa em strings inventado por Alfred V. Aho e Margaret J. Corasick, ambos pesquisadores do Bell Labs, em 1975.
O objetivo do algoritmo é localizar todas as palavras chaves em textos, a partir de uma única interação, utilizando para tanto um dicionário contendo um conjunto finito de palavras chaves. A complexidade do algoritmo é linear
Uma outra abordagem para este problema, seria utilizar um Algoritmo guloso, que faria a iteração de palavra por palavra comparando com as chaves existentes no dicionário. Esta técnica não seria aplicável a grandes dicionários por ser muito lenta - complexidade $O(nc*np)$, onde nc é o número de palavras chaves e np é o número de palavras.