¿Cuál es la mejor manera de practicar con algoritmos y estructuras de datos?

La mejor manera es averiguar primero en qué algoritmos y estructuras de datos es débil. Aquí hay una lista de algoritmos / estructuras de datos para referencia: https://discuss.codechef.com/que…

Una vez que haya encontrado en qué algoritmos / estructuras de datos es débil, practique la práctica práctica y profundice en ella . Haga una búsqueda rápida de algoritmos en CodeForces (separados por tipo de algoritmo) * , SPOJ (también separados por tipo de algoritmo), CodeChef (el enlace anterior tiene problemas para cada algoritmo), etc.

Hay tantos jueces en línea diferentes, sitios de concurso para practicar para sus algoritmos específicos en los que necesita trabajar. ¡Buena suerte!

* Conjunto de problemas – Fuerzas de código: debe asegurarse de que su configuración (en la columna de la derecha) esté marcada como “Mostrar etiquetas para problemas no resueltos”

Me temo que no hay una bala de plata aquí.

Comience por los fáciles, entiéndalos bien y luego codifíquelos a fondo. Si no pudo resolver una en particular, solo mire la pista suficiente para poder hacerlo usted mismo. Luego repítelo desde cero. Probablemente haga esto un poco más (semanas / meses) más tarde para asegurarse de que simplemente no lo recuerde, sino que capte el concepto central y pueda producirlo a partir de sus fundamentos, no de la memoria.

Itere al siguiente paso (concepto / categoría / estructura de datos / técnica algorítmica más difícil)

La parte más importante para mencionar aquí en mi humilde opinión es que, cuando luchas con los fáciles, pensarías que estás haciendo algo mal o es posible que no tengas lo que se necesita para llegar allí. Obviamente, estás esperando que los muy buenos lo atraviesen la primera vez o al menos no luchen tanto como tú. Principalmente estamos equivocados. Al principio, cada cuerpo tiene dificultades y pasó mucho tiempo mejorando su codificación y capacidad algorítmica para alcanzar un cierto nivel.

Después de eso, haga un lema para practicar (todos los días), está bien … de vez en cuando. Incluso si su semana laboral actual no requiere codificación, es una buena idea codificar un problema o dos al menos una vez a la semana. Siempre estar codificando

Si desea comprender y practicar cómo funcionan todos los algoritmos de estructura de datos, pruebe este sitio web: http://www.PracticeDS.com

http://www.PracticeDS.com está desarrollado con la única razón de ayudar a todos a leer, aprender, probar y practicar algoritmos de estructura de datos de forma gratuita.

● Es gratis.

● Es simple.

● Es conveniente.

● Te ayuda a resolver cualquier cantidad de problemas.

● Te ayuda a resolver tus propios problemas.

● Le ayuda a crear su propio gráfico personalizado.

● Le ayuda a aprender algoritmos de estructura de datos.

● Le ayuda a practicar algoritmos de estructura de datos.

● Le ayuda a comprender los algoritmos de estructura de datos.

1. Aprende el algoritmo
2.Encuentre algunas aplicaciones para ello
3. Comience a implementarlo en un programa.
4. Busque problemas en sitios como SPOJ, HackerRank que requieren este algoritmo y resuélvalos

Cuanto más código escriba, mejor lo entenderá. Mire todo como un problema de programación e intente ver la solución en el problema, no como algo que hacer para resolver el problema.

(Un “algoritmo” es solo una “forma de hacer algo”).

Los datos en sí y lo que va a tener que hacer con ellos deberían sugerir la estructura.

Me gustaría redirigirlo a la siguiente pregunta, ya que creo que esto respondería su pregunta de una manera mucho mejor:

¿Cómo fortalezco mi conocimiento de estructuras de datos y algoritmos? Ambos me han dejado con un conocimiento fracturado del tema con muchas lagunas en el medio. ¿Cuál sería una buena manera de llenar los vacíos y progresar?

More Interesting

¿Cuáles son las aplicaciones de la lista de enlaces simple, doble, circular y de encabezado en la estructura de datos?

¿Las funciones de JavaScript como map (), reduce () y filter () ya están optimizadas para recorrer la matriz?

¿Qué estructura de datos es más adecuada para una expresión postfix?

Cómo multiplicar elementos de matriz sin usar bucle

Si U = {todos los enteros positivos menores o iguales a 30} y N = {todos los números impares menores o iguales a 19}, ¿qué es N 'y n (N')?

¿Hay algún problema para el cual se pruebe que no existe un algoritmo óptimo?

¿De dónde viene la palabra algoritmo?

¿Cómo es la búsqueda tan rápida por los motores de búsqueda? Generan millones de instrucciones en menos de un segundo. ¿Qué algoritmo usan?

¿La programación genética y los algoritmos genéticos son iguales?

¿Cómo calcula Google la distancia entre dos lugares en Google Maps?

¿Qué algoritmos gráficos (10-15, tal vez) sugeriría que hicieran bien en la programación competitiva?

¿Cuál es la estructura de algoritmo / datos utilizada por Lucene para calcular el término frecuencia de los documentos?

Si tengo una base de datos con 100 mil millones de nombres de usuario, ¿cómo construyo eficientemente una matriz ordenada a partir de eso para realizar fácilmente una búsqueda binaria?

¿Cómo comparamos la complejidad del espacio y el tiempo como O (n ^ 2) tiempo versus O (n) espacio y O (n) tiempo?

¿Cuáles son los mejores libros sobre algoritmos y estructuras de datos?