Bienvenido a la sección de Pruebas Técnicas enfocada en resolver problemas de lógica y algoritmos. Aquí encontrarás ejercicios típicos de entrevistas para practicar habilidades fundamentales de programación, mejorar tu razonamiento y prepararte para pruebas en vivo.
- Enunciados claros y concisos.
- Restricciones y objetivos definidos.
- Soluciones explicadas paso a paso.
- Código de ejemplo en JavaScript (puedes adaptar a tu lenguaje favorito).
💡 Recomendación: Intenta resolver cada desafío por tu cuenta antes de mirar la solución.
- ✅ Subcadena más larga sin caracteres repetidos
- ✅ FizzBuzz con condiciones personalizadas
- ✅ Verificar si una cadena es palíndromo
- ✅ Determinar si dos strings son anagramas
- ✅ Encontrar el número que se repite una sola vez
- ✅ Validar paréntesis balanceados
- ✅ Búsqueda binaria en array ordenado
- ✅ Factorial recursivo vs iterativo
Dado un string, encuentra la longitud de la subcadena más larga que no contiene caracteres repetidos.
Ejemplo:
Entrada: "abcabcbb"
Salida: 3 // "abc"- Usa un puntero izquierdo y derecho para delimitar la ventana.
- Utiliza un
Setpara registrar caracteres únicos en la ventana. - Si hay repetidos, mueve el puntero izquierdo y elimina del set.
- Guarda el tamaño máximo en cada iteración.
Imprime los números del 1 al 100. Para múltiplos de 3, imprime "Fizz", para múltiplos de 5 "Buzz", y para ambos "FizzBuzz".
Salida esperada (fragmento):
1, 2, Fizz, 4, Buzz, Fizz, 7, ...
-
Usa un bucle de 1 a 100.
-
Condicionales:
n % 3 === 0 && n % 5 === 0→ "FizzBuzz"n % 3 === 0→ "Fizz"n % 5 === 0→ "Buzz"- else → número
Escribe una función que determine si una palabra o frase es un palíndromo (se lee igual al derecho que al revés).
Ejemplo:
Entrada: "anita lava la tina"
Salida: true- Elimina espacios y convierte a minúsculas.
- Compara la cadena con su reversa.
Dado dos strings, determinar si son anagramas (mismos caracteres, diferente orden).
Ejemplo:
Entrada: "listen", "silent"
Salida: true- Quita espacios y ordena ambas cadenas.
- Compara si son idénticas.
Dado un array donde todos los elementos se repiten dos veces excepto uno, encuentra ese número.
Ejemplo:
Entrada: [4, 1, 2, 1, 2]
Salida: 4- Usa XOR (
^) para cancelar duplicados. - Resultado final será el número único.
Verifica si una cadena de paréntesis está correctamente balanceada.
Ejemplo:
Entrada: "({[]})"
Salida: true- Usa una pila.
- Por cada apertura, apila.
- Por cada cierre, compara con el tope.
Dado un array ordenado y un número objetivo, devuelve su índice o -1 si no existe.
Ejemplo:
Entrada: [1, 3, 5, 7, 9], objetivo: 5
Salida: 2- Usa punteros
inicioyfin. - Calcula punto medio.
- Reajusta el rango según el valor buscado.
Implementa una función que calcule el factorial de un número de forma:
- Recursiva
- Iterativa
Ejemplo:
Entrada: 5
Salida: 120- Recursivo:
n * factorial(n - 1) - Iterativo: usar bucle acumulativo
- Elige un problema del índice.
- Lee el enunciado sin mirar la solución.
- Intenta resolverlo por tu cuenta.
- Revisa la solución paso a paso.
- Refactorea y optimiza tu código si es necesario.
✅ Puedes adaptar el código a otros lenguajes como Python, Java, C++, etc.
| Desafío | Nivel |
|---|---|
| 1-5 | 🟢 Básico |
| 6-8 | 🟡 Intermedio |
- Nuevos ejercicios por categorías: recursión, sorting, grafos, etc.
- Soluciones en múltiples lenguajes.
- Simulador de entrevistas técnicas.
Hecho con 💻 por @holasoymalva