Para entender la programación, pruebe los siguientes libros.
- Let Us C por Yashvant Kanetkar
- Programación Orientada a Objetos usando C ++ por E Balagurusamy.
- Introducción a Java por Sedgewick
Estos dos libros le presentan los conceptos básicos de la programación modular y la programación orientada a objetos.
Para los algoritmos, primero debe seleccionar un buen libro y / o un buen curso en línea. Puede seleccionar cualquiera de los siguientes tres libros para comenzar:
- Cómo entender la precisión Top-N en el aprendizaje automático de una manera simple
- ¿Puedes compartir tu algoritmo de encontrar la longitud del AP más largo en una matriz dada?
- En programación, ¿un generador de números aleatorios es realmente aleatorio? ¿O son los números aleatorios generados por un algoritmo oculto?
- ¿Cuál es la mejor manera de fusionar datos mal estructurados de grandes bases de datos?
- ¿Cómo implemento un árbol N-ary en C?
- Introducción a los algoritmos por Thomas Cormen
- Algoritmos informáticos de Horowitz y Sahni
- Algorithms, 4th Edition por Robert Sedgewick y Kevin Wayne.
También hay un curso gratuito en Coursera | Cursos en línea de las mejores universidades. Únase gratis llamado Algorithms parte 1 de la Universidad de Princeton, que es un gran curso para principiantes. También puede seguir el curso gratuito de algoritmo basado en JavaScript en KhanAcademy.
Cualquiera sea el libro o curso que elija, la mejor manera de dominar completamente un algoritmo o estructura de datos es
- Lea sobre esto y trate de entenderlo.
- Impleméntelo en el idioma que elija, tal como se indica en el libro o curso.
- Analice el algoritmo y piense en formas de optimizarlo aún más.
- Resuelva problemas relacionados con el algoritmo o la estructura de datos en un portal de resolución de problemas o de programación competitiva como HackerEarth, HackerRank, un portal informático para geeks, etc.