lunes, 4 de julio de 2011

Recursion como herramienta en resolucion de problemas computacionales

Modularidad

Se denomina Modularidad a la propiedad que permite subdividir una aplicación en partes más pequeñas (llamadas módulos), cada una de las cuales debe ser tan independiente como sea posible de la aplicación en sí y de las restantes partes.
"Modularidad  consiste en dividir un programa en módulos que pueden ser compilados de forma separada, pero que tienen conexiones con otros módulos"
Estos se  publican bibliotecas de tales módulos, que Se llaman “librerías” y se conoce que el módulo más pequeño es una subrutina.

Subrutina

Se presenta como un sub algoritmo que forma parte del algoritmo principal, el cual permite resolver una tarea específica. Toman uno o varios parámetros de tipos predefinidos y ejecutan su propio código a base de los parámetros recibidos
Ejemplos:
Usamos subrutinas de las bibliotecas estándares de ANSI-C para las siguientes funciones:
-Impresión en el terminal que es la biblioteca (stdio.h)
-Lectura de datos del teclado que es la biblioteca (stdio.h)
-Operaciones matemáticas en la biblioteca (math.h)
-Manipulación de cadenas de caracteres en la biblioteca(string.h)


 

Encadenados

Se  podría decir que como un método principal que llama a otro submetodo y ese a otro submetodo a si infinitamente.
Ejemplo:
-El método principal (main) puede llamar a subrutinas. Luego, esas subrutinas pueden llamar a otras subrutinas. Esas luego a otras, etcétera y no hay un límite fijo de “profundidad” de llamadas.

Flujo de control

Se dice que la (sub)rutina en ejecución “tiene control” de la computadora y al terminar su ejecución, una subrutina devuelve el control de la computadora a la rutina principal.

Iteración

 Llamas repetidas de una subrutina o la ejecución de un bloque de código en un ciclo se conoce como iteración.

Recursión

 Cuando una (sub)rutina llama a sí misma, se dice que es recursivo.

Análisis de algoritmos recursivos

Un algoritmo recursivo es un algoritmo que expresa la solución de un problema en términos de una llamada a sí mismo. La llamada a sí mismo se conoce como llamada recursiva o recurrente.
Típicamente hay que escribir una ecuación recursiva para poder correctamente caracterizar la cantidad de llamadas que se hará a la rutina recursiva.

1 comentario: