You are on page 1of 8

Diseo de Estructura de Datos

Conceptor de Recursividad

Conceptos de Recursividad
Permite que un bloque de instrucciones se ejecute n veces. Remplaza en ocasiones a estructuras repetitivas. Este concepto ser de gran utilidad para el captulo de la estructura de datos tipo rbol. La recursividad es un concepto difcil de entender en principio, pero luego de analizar diferentes problemas aparecen puntos comunes.

Conceptos de Recursividad
En Java los mtodos pueden llamarse a s mismos. Si dentro de un mtodo existe la llamada a s mismo decimos que el mtodo es recursivo.

Recursivo: GNU (GNU NOT UNIX)

Conceptos Recursivos
Cuando un mtodo se llama a s mismo, se asigna espacio en la pila para las nuevas variables locales y parmetros. Al volver de una llamada recursiva, se recuperan de la pila las variables locales y los parmetros antiguos y la ejecucin se reanuda en el punto de la llamada al mtodo.

Ejemplo 01 Recursividad

public class Recursividad { public void repetir() { repetir(); } public static void main(String[] ar) { Recursividad re=new Recursividad(); re.repetir(); } }

Ejemplo 02 Recursividad

public class Recursividad { public void imprimir(int x) { System.out.println(x); imprimir(x-1); } public static void main(String[] ar) { Recursividad re=new Recursividad(); re.imprimir(5); } }

Ejemplo 03 Recursividad

public class Recursividad { void imprimir(int x) { if (x>0) { System.out.println(x); imprimir(x-1); } } public static void main(String[] ar) { Recursividad re=new Recursividad(); re.imprimir(5); } }

Ejemplo 04 Recursividad
Cules son los datos que ingresa y cules son los que imprime?

public class Recursividad { void imprimir(int x) { if (x>0) { imprimir(x-1); System.out.println(x); } }

public static void main(String[] ar) { Recursividad re=new Recursividad(); re.imprimir(5); } }

You might also like