Obtenga experiencia a nivel principiante en uno de los lenguajes mecanografiados como C ++ o Java.
Los lenguajes mecanografiados dan un mejor contexto sobre “¿qué representa qué?”, Especialmente cuando codifica sus propias estructuras de datos.
Para estructuras de datos:
Estudie las estructuras de datos utilizando C y C ++ por Langsam, Augenstein, Tanenbaum.
No se preocupe por el idioma del libro aunque haya seleccionado Java.
También puede codificar todas las estructuras de datos presentadas en el libro utilizando Java.
o
- ¿Qué prueba de primalidad se usa en las aplicaciones de software convencionales?
- ¿La programación lineal admite un algoritmo de tiempo fuertemente polinómico?
- ¿Qué es la recursividad? ¿Puedes explicar los principios fundamentales de las recursiones? ¿Puedes hacer el código / algoritmo de la serie Fibonacci usando recursividad?
- ¿Alguien puede dar un ejemplo en Java de pasar una matriz unidimensional, una matriz bidimensional y una matriz tridimensional por referencia y luego manipularlos?
- ¿Qué tipo de algoritmo SLAM es adecuado para una aceleración con FPGA o FPGA-SoC?
Comience con las estructuras de datos básicas como Lista enlazada – Pila – Cola – Árboles binarios – Montón de estructuras de datos – GeeksforGeeks.
Cada vez que termine una estructura de datos de cualquiera de los lugares, impleméntela usando su idioma. Resuelve preguntas relacionadas con él.
Para algoritmos:
Comience con el conocido libro Introducción a los algoritmos de CLRS .
Intente resolver el conjunto de ejercicios y el conjunto de problemas después de terminar de leer cada capítulo. Puede quedar atrapado mientras resuelve problemas. No te rindas Obtenga ayuda de sus amigos, colegas o de stack-exchange (Preguntas más recientes sobre ‘algoritmos’).
Si eres bueno en las pruebas matemáticas, sin duda te ayudará a entender el libro más rápido con mayor profundidad. Aunque si no eres bueno, entonces el libro en sí te ayuda con su Apéndice: Antecedentes matemáticos (proporcionados al final).
o
Para algoritmos en Coursera, existe el Curso de Algoritmos de Tim Roughgarden Algorithms | Coursera. Complete este curso, resuelva las tareas. Este curso establecerá un pensamiento algorítmico concreto y también brindará un conocimiento formal sobre los algoritmos.
Igual que para las estructuras de datos, cada vez que termine un algoritmo de cualquiera de los lugares, impleméntelo usando su idioma. Resuelve preguntas relacionadas con él.