Los programas implementan algoritmos, generalmente varios, para completar una tarea o un rango de tareas.
Los algoritmos son conceptos de alto nivel, diseñados y construidos de tal manera que se pueden implementar en cualquier idioma. Generalmente se escribe como una lista de pasos a seguir para tomar los datos de entrada y transformarlos en datos de salida. Luego implementa eso (escribe código que hace lo que dice hacer), y ese es un programa básico. Luego incorporas eso con una interfaz (argumentos de línea de comandos, página web, interfaz gráfica de usuario, lo que sea) y manejas la entrada y la salida correctamente (tal vez transfieras la entrada de una lista de coordenadas geográficas a un gráfico y transforma la salida en un mapa o algo así).
Eso hace un programa. Los sistemas más grandes generalmente pueden resolver una variedad de problemas diferentes, a menudo utilizando una variedad de algoritmos implementados para hacerlo. Por ejemplo, toma un juego. Es posible que tenga un algoritmo para recortar la cámara, un algoritmo para renderizar en 3D, un algoritmo para encontrar caminos para los enemigos, etc. Estos se implementan y se utilizan para resolver los problemas que deben resolverse.
- En programación, ¿un generador de números aleatorios es realmente aleatorio? ¿O son los números aleatorios generados por un algoritmo oculto?
- ¿Cómo es codicioso el algoritmo de Kruskal?
- Funciones hash: ¿Cuál es una explicación intuitiva de los diversos algoritmos SHA? ¿Cuáles son las mejoras clave entre cada familia?
- Cómo escribir un algoritmo para la suma de n factoriales. es decir, 1! +2! +3! +… (N-1) + n
- ¿Cómo diferenciar entre algoritmos de clasificación internos y externos en términos simples? ¿Cómo se lo explica a los principiantes?