Cómo desarrollarme bien en algoritmos y programación

básicamente los algoritmos son pasos lógicos, la programación es difícil pero con la práctica realmente puede ser muy fácil.
Puedo dar un ejemplo, puede ayudarlo: supongamos que quiero escribir un código para “Torre de Hanoi”, una famosa pregunta del rompecabezas, así que mis pasos serán (puede que alguien conozca mejores pasos que esto, pero puede usarlo como un ejemplo):
1. ¿Qué es la “Torre de Hanoi”? ¿Hay alguna posible solución para ello, en caso afirmativo lo has entendido?
2. ¿Hay algún otro método mejor que este?
3. Ahora decida qué método seguirá, en términos de lógica y no de programación.
4. ¿Cómo puedo usar esta lógica para mi programación, anotar los posibles pasos para alcanzar su objetivo?
5. Escriba el nombre de la función al lado de los pasos que utilizará.
6. Compruebe las funciones predefinidas / de biblioteca que pueden ayudarlo a realizar el trabajo.
7. Ahora divida la tarea según los pasos, porque le será más fácil depurarla más tarde.
8. Ahora, si todos los pasos están funcionando, ya está.
9. Así que haz un hábito para romper las cosas y luego combinarlas.
Creo que debería funcionar, sigo estos pasos

Primero domina las estructuras de datos
Una vez que conozca las estructuras de datos, intente resolver los problemas y piense qué estructuras de datos pueden adaptarse mejor a cada problema.
Un ejemplo, eliminar duplicados de una cadena o una matriz
Para resolver este problema de manera optimizada, debe usar un árbol y crear una solución
Una vez que haga esto, tome un libro de algoritmos y vea. Algoritmos de coincidencia de patrones
Los algoritmos de coincidencia de patrones generalmente toman la entrada como un patrón único y coinciden si el patrón de cadena o datos está allí o no
Intente mejorar el algoritmo comprobando si hay un patrón en la cadena misma.
De esta forma, los algoritmos de aprendizaje serán interesantes, en lugar de simplemente pasar por lo que hay en el libro.

Si realmente está interesado en dominar el algoritmo informático, aquí está la receta para usted
1) Tome el curso de algoritmo básico de Udacity.
2) Lea el libro Introducción al algoritmo de Cormen en el.
3) Comience a resolver problemas desde la competencia de programación, el concurso de programación, la programación informática en línea.
voila …