String texto = "ABABDABACDABABCABAB";
String patron = "ABABCABAB";
// KMP evita retroceso en texto
int comparaciones = 9; // vs 63 fuerza bruta
System.out.println("Índice: " + 10); 📥 Inputs:
texto.length() = 19, patron.length() = 9
❓ ¿Cuál es el output?
Ingresa tu respuesta abajo
💡 Explicación
El algoritmo KMP (1977) encuentra patrones en texto en tiempo O(n+m) sin retroceder en el texto original. Usa una tabla de prefijos para 'saltar' posiciones ya verificadas. En este caso, encuentra el patrón en posición 10 con solo 9 comparaciones vs 63 de fuerza bruta. Revolucionó la búsqueda de texto y es base de comandos como grep.
¿En qué índice encuentra el patrón? 🔍