Recursion

Solo disponible en BuenasTareas
  • Páginas : 4 (877 palabras )
  • Descarga(s) : 15
  • Publicado : 14 de abril de 2010
Leer documento completo
Vista previa del texto
Recursión

Anuncio de cacao con una imagen recursiva. La mujer muestra un paquete idéntico al del propio anuncio, conteniendo así a otra mujer que muestra otro paquete más pequeño, de formarecursiva.

Imagen recursiva formada por un triángulo. Cada triángulo está compuesto de otros más pequeños, compuestos a su vez de la misma estructura recursiva.

Recursión o recursividad es la forma enla cual se especifica un proceso basado en su propia definición. Siendo un poco más precisos, y para evitar el aparente círculo sin fin en esta definición: Un problema que pueda ser definido enfunción de su tamaño, sea este N, pueda ser dividido en instancias más pequeñas (< N) del mismo problema y se conozca la solución explícita a las instancias más simples, lo que se conoce como casos base, sepuede aplicar inducción sobre las llamadas más pequeñas y suponer que estas quedan resueltas. Para que se entienda mejor a continuación se exponen algunos ejemplos:


Factorial(x: Entero): Sea N:= x el tamaño del problema, podemos definir el problema de forma recurrente como x*Factorial(x - 1); como el tamaño de

Factorial(x - 1) es menor que N podemos aplicar inducción por lo quedisponemos del resultado. El caso base es el Factorial(0) que es 1.


Ordenación por fusión(v: vector): Sea N := tamaño(v), podemos separar el vector en dos mitades. Estas dos mitades tienen tamaño N/2por lo que por inducción podemos aplicar la ordenación en estos dos subproblemas. Una vez tenemos ambas mitades ordenadas simplemente debemos fusionarlas. El caso base es ordenar un vector de 0elementos, que está trivialmente ordenado y no hay que hacer nada.

En estos ejemplos podemos observar como un problema se divide en varias (>= 1) instancias del mismo problema, pero de tamaño menor graciasa lo cual se puede aplicar inducción, llegando a un punto donde se conoce el resultado (el caso base).. Nota: aunque los términos "recursión" y "recursividad" son ampliamente empleados en el campo...
tracking img