Leetcode 79 Word Search es un problema clásico de entrevistas que pone a prueba recursión, recorrido en rejilla y backtracking. Aquí lo resolvemos con dos enfoques complementarios y te explicamos cuándo usar cada uno para maximizar claridad y eficiencia.
Planteamiento del problema. Dado un tablero 2D de caracteres y una palabra, hay que comprobar si la palabra puede formarse uniendo celdas adyacentes en las cuatro direcciones arriba, abajo, izquierda, derecha. Una celda no puede reutilizarse en la misma ruta. Ejemplo visual del tablero A B C E fila siguiente S F C S fila siguiente A D E E. Palabra ABCCED. Resultado esperado true.
Enfoque 1 con Set. Idea general. 1 probar cada celda r c como punto de inicio. 2 hacer una búsqueda en profundidad DFS avanzando letra a letra. 3 mantener un Set con las celdas visitadas para no revisitar r c en la ruta actual. 4 backtracking limpiar el Set al retroceder para permitir otras rutas. La condición base se cumple cuando i alcanza la longitud de la palabra. Se invalidan las ramas si r o c están fuera de límites, si la letra no coincide o si r c ya está en el Set.
Complejidad del enfoque con Set. Tiempo en el peor caso O filas x columnas x 4 a la L donde L es la longitud de la palabra. Espacio O L por el Set de visitados y la profundidad de la recursión. Es una solución muy didáctica para entender el patrón de backtracking y su limpieza.
Enfoque 2 optimización in place. En lugar de un Set, marcamos la celda actual como visitada modificando temporalmente el tablero con un marcador como almohadilla. Luego exploramos sus cuatro vecinos y al retroceder restauramos el carácter original. Esta marca hace que la verificación de visitado sea natural ya que la almohadilla nunca coincide con la próxima letra buscada. Resultado práctico. mismo recorrido, menos memoria y código más limpio.
Complejidad del enfoque optimizado. Tiempo O filas x columnas x 4 a la L igual que antes. Espacio adicional O L únicamente por la pila de llamadas. Sin Set ni estructuras auxiliares, por lo que suele ser más rápido en la práctica.
Comparación breve. Con Set claridad alta y aprendizaje explícito del patrón de limpieza, pero con pequeña sobrecarga de memoria. In place más corto, limpio y eficiente en memoria, ideal como versión final pulida.
Consejo para entrevista. Empieza con la variante con Set para exponer tu razonamiento, los invariantes y la limpieza del estado. Después optimiza al marcado in place para demostrar dominio de trade offs y atención al rendimiento.
En Q2BSTUDIO desarrollamos soluciones de alto rendimiento aplicando patrones como estos en productos reales. Si tu empresa necesita aplicaciones a medida y software a medida robusto y escalable, podemos ayudarte a diseñar arquitecturas limpias, optimizadas y fáciles de mantener. Descubre cómo abordamos el desarrollo multiplataforma en nuestro servicio de software a medida y aplicaciones a medida.
También somos especialistas en inteligencia artificial y IA para empresas, desde búsqueda y planificación con backtracking y heurísticas hasta agentes IA que integran datos corporativos. Conoce nuestras capacidades de inteligencia artificial aplicada y cómo las combinamos con servicios cloud aws y azure, ciberseguridad avanzada y pentesting, así como servicios inteligencia de negocio con power bi para convertir datos en decisiones.
Palabras clave para quienes buscan un partner tecnológico integral. aplicaciones a medida, software a medida, inteligencia artificial, ia para empresas, agentes IA, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio y power bi. En Q2BSTUDIO unimos ingeniería de software, ciencia de datos y seguridad para construir soluciones que crecen con tu negocio.