Credito de imagen: vgajic / E + / GettyImages
Diseñar nuevos algoritmos puede parecer intimidante para los nuevos programadores, pero es una habilidad que se puede practicar como cualquier otra. Comience buscando un libro de problemas de algoritmos para principiantes o tomando una clase de informática en línea o fuera de línea. Practique el dominio de los conceptos básicos del diseño de algoritmos, incluida la estimación de la complejidad y el tiempo de ejecución, para casos extremos que podrían causar problemas para un algoritmo informático y dividir los problemas en partes.
Qué es un algoritmo informático
Un algoritmo es un procedimiento que sigue una computadora o un ser humano para resolver un problema. La división larga es un algoritmo de muestra que mucha gente aprende a hacer en la escuela. El algoritmo euclidiano, que se utiliza para encontrar el máximo común divisor de dos números, es otro ejemplo común.
Video del día
Un algoritmo de computadora se escribe en última instancia en un lenguaje de programación que la computadora puede entender, pero cuando el algoritmo se está desarrollado, los programadores e informáticos a menudo lo escriben primero informalmente como prosa y luego más formalmente en un formato genérico llamado pseudocódigo.
El pseudocódigo parece un lenguaje de programación, pero debido a que está diseñado para ser leído por humanos en lugar de computadoras, no tiene reglas sintácticas rigurosas.
Ejemplos de algoritmos simples para principiantes
A menudo se enseñan ejemplos famosos de algoritmos a los informáticos y programadores principiantes. Algunos ejemplos son el algoritmo de Dijkstra, que se utiliza en la teoría de grafos para encontrar el camino más corto entre dos puntos; Merge Sort, que se utiliza para ordenar listas de datos; y el algoritmo RSA utilizado para cifrar datos. Muchos de estos están disponibles en línea en libros de texto, videos y material de curso gratuitos.
El sitio de aprendizaje en línea Khan Academy tiene muchos ejemplos de algoritmos con los que los principiantes pueden experimentar. Las principales universidades como Harvard, Stanford y el Instituto de Tecnología de Massachusetts hacen materiales y videos del curso con algoritmos comunes disponibles en línea para la introducción a la informática clases.
También hay sitios con problemas de concursos de programación y explicaciones de cómo se resuelven, lo que puede ayudar a las personas interesadas en desarrollar sus habilidades.
Consideraciones de algoritmos
Cuando crea un nuevo algoritmo, debe asegurarse de que funcione en todos los casos en los que crea que debería hacerlo y tratar de comprender qué tan eficiente es. Por lo general, los programadores dividen el algoritmo en partes discretas para que puedan pensar en cómo funciona cada parte y cuánto tiempo lleva. A esto se le llama diseño modular.
Es una buena idea probar un algoritmo usted mismo con lápiz y papel en algunos casos simples antes de comenzar a escribir código. Cuando piense en la eficiencia, piense en el caso promedio, las situaciones comunes que probablemente encontrará su algoritmo y el tiempo de ejecución del peor de los casos. El tiempo de ejecución del peor de los casos a menudo se representa con lo que se llama notación Big-O.