unidad 2 recursividad
TRANSCRIPT
S
INSTITUTO TECNOLOGICO SUPERIOR DE FELIPE CARRILLO
Estructura de Datos
Ing. Sistemas computacionales Docente: Niels Henryk Aranda Cuevas Alumno: Luis Enrique Moo Canche Grupo: 3er “A”
U2. Recursividad.
2.1. Definición
Alternativa diferente para implementar estructuras de repetición (ciclos). Se apoya en la
modularidad, pues a través de los módulos se hacen llamadas recursivas.
Un módulo es recursivo si, como parte de su definición, incluye al menos una llamada a sí
mismo
(Martínez, R. & Quiroga, E., 2001)
U2. Recursividad.
TIPOS: Recursión simple Recursión múltiple Recursión cruzada o indirecta Recursión anidada
2.2. Procedimientos Recursivos
U2. Recursividad.
FACTORIAL ¿Cómo se calcula el factorial de un número?
Ejemplo: 0!, 1!, 2!, 3!, 4!, 5!
2.3. Ejemplo de Casos
U2. Recursividad.
Factorial (forma iterativa)
-- Caso Base
factorial = 1;
-- Parte Recursiva
for (int i =n; i >= 1; i --)
factorial *= i;
factorial *= i
SI
i = n i >= 1 i --
n
factorial =1
2.3. Ejemplo de Casos
U2. Recursividad.
Factorial (forma recursiva)int factorial (int n){
if (n <= 1)
return 1;
else
return (n * factorial ( n-1 ));
}
n <= 1 return 1
return(n * factorial (n-1))
SI
NO
n
2.3. Ejemplo de Casos
U2. Recursividad.
2.3. Ejemplos de casos
FIBONACCI (Leonardo de Pisa) ¿Cómo se calcula la serie Fibonacci?
Condiciones: Fibonacci (0) = 0 n=0 Fibonacci (1) = 1 n=1 Fibonacci (n) = Fibonacci(n-1)+Fibonacci(n-2)
n>1