¿Cómo debo hacer uso de sitios como HackerEarth y GeeksforGeeks si tengo habilidades de algoritmos por debajo del promedio?

No sé acerca de HackerEarth, pero GeeksforGeeks parece ser una excelente manera de comenzar a practicar algoritmos. Hay una sección completa del menú dedicada a la aceleración y los problemas básicos, que parece ser un excelente lugar para comenzar sin conducirlo demasiado, demasiado pronto. Repase esto y determine dónde residen sus habilidades, luego resuelva los problemas de ese nivel hasta que se sienta lo suficientemente confiado (o engreído) como para enfrentar un gran problema del siguiente nivel.

Si todavía tiene dificultades con estas preguntas, uno de mis sitios favoritos para preguntas de práctica es, sin lugar a dudas, Codewars. Estos son problemas altamente digeribles, a menudo con una amplia cobertura de idiomas, que se pueden hacer en minutos o segundos si identifica los patrones de inmediato. Además, la mejor parte: al completar un problema, le mostrará las soluciones de todas las personas que lo hayan completado antes, clasificadas según las mejores prácticas, la inteligencia y la limpieza. Esta es una excelente manera de identificar patrones inteligentes en el idioma que elija y de impulsar sus habilidades en ese idioma rápidamente, así como de comprender cómo los desarrolladores más experimentados abordarían un problema similar.

También hay un mundo de videos de YouTube y recursos en línea gratuitos para comprender mejor los algoritmos. No se limite a uno o dos sitios. ¡Toma todo el conocimiento que puedas! Luego, cuando todo esté dicho y hecho y se sienta seguro, continúe y comience a trabajar las preguntas reales de la entrevista. (También puede hacerlo con anticipación, para mantener el ritmo y ver dónde están sus áreas débiles y fuertes).

¡La mejor de las suertes!

Puede aprender tema por tema de la sección “CodeMonk” en HackerEarth y practicar los problemas de ese tema. Agudizará en gran medida tus habilidades.

Junto con eso, puede hacer “Especialización en algoritmos” de Coursera (ofrecido por la universidad de Stanford), que se considera uno de los mejores MOOC ofrecidos sobre este tema y es amigable para principiantes.

También puede resolver preguntas de manera aleatoria / temática de otros OJ como CodeChef o HackerRank o Codeforces y aprender de sus editoriales.

Debe comprender los conceptos básicos de esos sitios.

Tienen muchos problemas, intenta resolverlos paso a paso.

Una vez que haya resuelto, participe en concursos de programación en línea.

Establezca su propio problema y envíelo para que otras personas lo resuelvan.

Intenta encontrar una solución de manera diferente.