Algoritmos Ávidos

Revisión del 19:57 10 jul 2019 de Josefina (discusión | contribuciones) (Texto reemplazado: «<div align="justify"> » por «»)
(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Algoritmos Ávidos
Información sobre la plantilla
Algoritmos Ávidos11.jpg
Concepto:Es una técnica de algoritmos.

Algoritmos Ávidos. Es una técnica algorítmica para hallar soluciones a diferentes problemas, que toma decisiones de corto alcance, basadas en la información inmediatamente disponible. Usualmente este criterio trata de adicionar tanto como sea posible a la solución parcial actual, de aquí el nombre de algoritmos ávidos, sin importar las consecuencias futuras.


Características

  • Son rápidos.
  • Requieren de poca memoria para ejecutarse.
  • Necesitan pruebas para llegar a la optimidad de la solución, o la solución puede ser no óptima.


Problemas que puede resolver

  • Cambio de monedas.
  • Planificación de procesos.
  • Árbol de cubrimiento minimal.
  • Todos aquellos donde pueda determinarse rápida y óptimamente como completar una solución parcial en algunas ocasiones para generar soluciones buenas que no sean óptimas.

Gestión e información de errores

  • Clasificación de los errores:
    • Lexicológicos: escribir mal un número, un símbolo no permitido.
    • Sintácticos: expresión aritmética con paréntesis no balanceados.
    • Semánticos: aplicar un operador a un operando incompatible.
    • Lógico o de programación: ciclo infinito.

Requisitos para el tratamiento de errores

  • Reportar la presencia de los errores clara y precisamente.
  • Recuperarse de los errores lo suficientemente rápido como para ser capaz de detectar los errores siguientes.
  • No demorar significativamente el procesamiento de los programas correctos.

Ver además

Fuente

  • E.V.A. UCI, I. D. S. Programación II.
  • Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Introduction to Algorithms, Second Edition. MIT Press and McGraw-Hill, 2001. ISBN 0-262-03293-7. Section 23.2: The algorithms of Kruskal and Prim, pp.567–574.