Diferencia entre revisiones de «Algoritmos Ávidos»
(→Problemas que puede resolver:) |
|||
Línea 4: | Línea 4: | ||
|imagen= | |imagen= | ||
|concepto= Es una técnica de algoritmos. | |concepto= Es una técnica de algoritmos. | ||
+ | }} | ||
+ | <div align="justify"> | ||
+ | '''Algoritmos Avidos'''. 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 == | |
− | == Características | ||
*Son rápidos. | *Son rápidos. | ||
Línea 15: | Línea 16: | ||
− | == Problemas que puede resolver | + | == Problemas que puede resolver == |
*Cambio de monedas. | *Cambio de monedas. | ||
Línea 22: | Línea 23: | ||
*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. | *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 | + | == Gestión e información de errores == |
*Clasificación de los errores: | *Clasificación de los errores: | ||
Línea 28: | Línea 29: | ||
**Sintácticos: expresión aritmética con paréntesis no balanceados. | **Sintácticos: expresión aritmética con paréntesis no balanceados. | ||
**Semánticos: aplicar un operador a un operando incompatible. | **Semánticos: aplicar un operador a un operando incompatible. | ||
− | **Lógico o de programación: ciclo infinito. | + | **Lógico o de [[programación]]: ciclo infinito. |
− | |||
− | == Requisitos para el tratamiento de errores | + | == Requisitos para el tratamiento de errores == |
*Reportar la presencia de los errores clara y precisamente. | *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. | *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. | *No demorar significativamente el procesamiento de los programas correctos. | ||
− | |||
− | |||
== Fuentes == | == Fuentes == | ||
− | E.V.A. UCI, I. D. S. Programación II. | + | * E.V.A. UCI, I. D. S. Programación II. |
[[Category:Ciencias_Aplicadas_y_Tecnologías]] | [[Category:Ciencias_Aplicadas_y_Tecnologías]] | ||
[[Category:Ciencias_informáticas_y_Telecomunicaciones]] | [[Category:Ciencias_informáticas_y_Telecomunicaciones]] | ||
[[Category:Ciencias_informáticas]] | [[Category:Ciencias_informáticas]] |
Revisión del 08:53 1 nov 2011
|
Algoritmos Avidos. 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.
Sumario
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.
Fuentes
- E.V.A. UCI, I. D. S. Programación II.