Está en la página 1de 8

Strings ACM

Tries, KMP, etc..


TRIES
public class TrieNode {
private HashMap<Character,
TrieNode> children;
private String content;
private boolean isWord;

// ...
}
Tries Operaciones public class Trie {
private TrieNode root;
//...
}

• Los tries son


arboles que public void insert(String word) {
TrieNode current = root;
permiten
almacenar letras for (int i = 0; i < word.length(); i++) {
current = current.getChildren()
para hacer .computeIfAbsent(word.charAt(i),
c -> new TrieNode());
matching entre }
ellas formando current.setEndOfWord(true);
}
palabras.
Realicen su propia implementación de Trie.
KMP
• El algoritmo KMP es
un algoritmo de
búsqueda de
subcadenas simple y
por lo tanto su
objetivo es buscar la
existencia de
una subcadena dentr
o de una cadena.
BuscarPrefijo (string pattern, prefArray[] )
kmpAlgorithm(text, pattern)
Realicen su propia implementación de KMP.

También podría gustarte