Para cualquier entrevista de programador, las siguientes tres áreas son la clave
- Algoritmos (Ordenación y Búsqueda principalmente).
- Estructuras de datos (Listas enlazadas, arrays, definición de árboles/travesía/búsqueda y grafos).
- "Lógica" - Esto es algo grande. Deberías tener la suficiente confianza en ti mismo como para idear una lógica viable, explicársela al entrevistador e implementarla en "TIEMPO RÁPIDO". Esto pone de manifiesto tu capacidad para resolver problemas más que cualquier otra cosa. Practica tantos proboem como puedas antes de ir a tu gran entrevista. Piensa en una lógica, escríbela en papel, codifícala en un ordenador y ejecútala para ver cómo funciona. Analiza tu propio enfoque y ve dónde puedes mejorar, entonces Y SÓLO ENTONCES, compara tu enfoque con otras implementaciones.
Lee libros para entender los algoritmos y la estructura de datos como concepto. Personalmente no me gusta imitar código por muy bien escrito que esté.
Intenta resolver el problema o implementar un algoritmo o representar una estructura de datos tú mismo. Si no puedes implementarlo, está bien. Sabrás donde mejorar y trabajar en ello hasta que lo hagas mejor. Parece que tienes una buena cantidad de tiempo para resolver cualquier entrevista.
En la entrevista, haz tantas preguntas como sean necesarias para entender el problema que se te pedirá que resuelvas. Plantea una lógica/enfoque para resolver el problema. Explíquelo al entrevistador a medida que lo pone en práctica para que sepa lo que está haciendo.
Por último, sé guay 🙂