¿Cuáles son las mejores rutinas que podemos adoptar para ser buenos en la programación / diseño de algoritmos?

Tengo algunos consejos: (relacionado con Java, tal vez también sean aplicables para otros idiomas)

  • En la medida de lo posible, declare las variables en un solo lugar. El mas importante. Además, si los inicializa con un valor predeterminado para que durante la ejecución no obtenga errores como ‘La variable no se ha inicializado’
  • Es mejor prevenir que curar. Siempre que haya una conversión entre diferentes tipos de datos o cualquier tipo de operaciones complicadas, realice una conversión de tipos explícita para asegurarse de que no se produzca ningún error y que no haya pérdida de datos.
  • Además, siempre haga objetos para invocar funciones, incluso si son públicas o no lo requieren para que no haya errores. Lo digo porque a veces, mientras escribimos programas largos, a menudo perdemos la noción del tipo de funciones que tenemos.

Recuerde que estos errores son muy pequeños, pero la corrección en programas complicados puede consumir mucho tiempo. Un pequeño esfuerzo asegurará que haya muy pocos errores en el programa.

Agregará más pronto.

Lo único que puedo decir es seguir practicando en varias plataformas en línea como Hackerrank, Hackerearth, Spoj, Codechef, CodeForces. Al practicar en estas plataformas, su habilidad para resolver problemas junto con su DS y Algo mejora mucho. También intente participar en varias competiciones en línea o hackathons en estas plataformas. También intente resolver preguntas de GeeksForGeeks. Encontrará una variedad de preguntas relacionadas con diferentes estructuras de datos y algoritmos. Diariamente, al menos de 2 a 3 horas en codificación. Feliz codificación.

More Interesting

¿Cuál es una versión más amigable para principiantes de CLRS para algoritmos de aprendizaje? ¿Estaría rompiendo la entrevista de codificación?

¿Cuál es la mejor manera de ingresar al último proceso de aprendizaje de algoritmos de reconocimiento facial?

¿Por qué los problemas NP completos son más difíciles que los problemas NP si un problema NP puede reducirse a un problema NP completo?

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')?

No entiendo las torres recursivas del problema de Hanoi. ¿Qué es?

Cómo aprender algoritmos y programación competitiva de manera rápida y efectiva cuando te estás haciendo viejo

¿Cómo podría encontrar la métrica correcta que se utilizará para los vecinos más cercanos u otros algoritmos basados ​​en similitudes?

¿Cuáles son los usos de diferentes algoritmos de clasificación como burbuja, selección, inserción, shell, fusión, montón, rápido, árbol, raíz, conteo y clasificación de cubetas en escenarios de la vida real?

¿Cuáles son algunas preguntas asombrosas de CodeChef con soluciones comprensibles que me ayudarán a aprender nuevos métodos y conceptos?

¿Cómo debería resolver mejor los problemas de programación?

¿Qué algoritmo (s) de aprendizaje automático es el mejor para la regresión no lineal con un número limitado de datos?

¿Se puede programar un algoritmo complejo de una manera simple? Suponga que no se necesitan optimizaciones.

Cómo determinar la eficiencia de un programa de retroceso

¿Es posible implementar un montón dinámico paralelo?

Cómo obtener maestría en estructuras de datos y algoritmos