Diferencia entre revisiones de «Fundamentos de programación/Algoritmos»
Contenido eliminado Contenido añadido
m Revertidos los cambios de 181.58.38.158 (disc.) a la última edición de 186.121.246.130 Etiqueta: Reversión |
|||
Línea 14:
La ejecución de un algoritmo por parte de una máquina es posible porque estos no requieren ninguna decisión subjetiva ni el uso de la intuición o de la creatividad. Sin embargo, eso no significa necesariamente que los pasos que ejecuta un algoritmo se puedan determinar con precisión de antemano o que siempre den una respuesta exacta y sin errores. Los algoritmos probabilistas realizan elecciones aleatorias en determinados momentos de su ejecución. Los algoritmos aproximados dan una solución a un problema dentro de un margen de error que puede ser establecido de antemano. Los algoritmos heurísticos son algoritmos que dan una solución aproximada a un problema donde no podemos controlar la magnitud del error. Lo importante al considerar estos tipos de algoritmos es que en ningún caso implican la ejecución de instrucciones o la toma de decisiones de forma arbitraria. Los mecanismos siempre están determinados de antemano, lo que varían son los resultados de ejecutarlos, por ejemplo al usar un generador de números pseudoaleatorios.<ref name="brassard1997" />
===
La creación de
* '''
* '''
* '''
[[Imagen:MoralGraph-DAG1.png|miniaturadeimagen|Representación visual de un problema modelado como un grado.]]
* '''Recorridos sobre grafos''': Los algoritmos de este tipo expresan un problema como un conjunto de elementos interconectados entre sí y buscan la solución recorriendo la estructura resultante, llamada grafo.
|