Antes de dar cualquier sugerencia, supongo que te sientes cómodo con la programación.
1. No hay ingrediente secreto.
Vipul Bansal lo dijo bien. Pero necesitas descubrir un truco que funcione para ti. Un truco para comenzar a aprender algoritmos. Un truco para crear y seguir un plan. Varía de persona a persona.
2. Técnicas.
1. Comience con las matemáticas. Sin una base matemática, uno no puede diseñar ni desarrollar un algoritmo eficiente. ‘Matemáticas concretas’ de Donald, Knuth y Patashnik, ‘Matemáticas discretas’ de Tremblay y Manohar son algunos buenos libros para comenzar.
2. Análisis de algoritmos. Aprenda los conceptos básicos del análisis asintótico. Por qué necesitamos analizar Algoritmos. Cómo medir el tiempo de ejecución de un algoritmo. Complejidad espacial y otros conceptos básicos.
‘Introducción a los algoritmos’ de CLRS, ‘The Art of Computer Programming’ de Donald E Knuth son libros interesantes para leer y debatir.
3. Siempre discuta algoritmos con sus amigos / colegas.
Aprende en línea. Si prefiere video conferencias, está bendecido con Coursera, Udacity, Udemy, NPTEL y muchos más. Sigue blogs relacionados con algoritmos. Consulte sitios como www.geeksforgeeks.com, los libros no son el único lugar.
4. Ahora viene la parte clave. Práctica. Lea la respuesta de @Prachi Jain sobre esto. Puede comenzar a resolver problemas en cualquiera de los sitios como uVA, codechef, project euler, codeforces, topcoder, etc.
- ¿Cuál es la forma correcta de escribir un algoritmo? ¿Podemos usar la sintaxis del lenguaje en el que estamos escribiendo?
- Cómo encontrar a alguien que pueda implementar un algoritmo de enrutamiento de vehículos que se nos ocurrió
- Cómo implementar Dropconnect usando TensorLayer
- ¿Cuál es exactamente la diferencia entre f (n) yg (n)?
- ¿Es probable que algún día los algoritmos de aprendizaje automático evolucionen para resolver problemas completos de NP?
No solo leas. Codifícalo. Impleméntalo. Esta es la regla general en los algoritmos de aprendizaje.
5. Después de pasar un tiempo con los algoritmos de aprendizaje (y / o cuando tenga una idea justa sobre el análisis de algoritmos), puede buscar los libros a continuación.
Manual de diseño de algoritmos de Skiena
Diseño de algoritmo por Klienberg y Tardos
Algoritmos de Robert Sedgewick.