RECURSIVIDAD

Description

Mind Map on RECURSIVIDAD, created by Maria Betancourt on 11/05/2020.
Maria Betancourt
Mind Map by Maria Betancourt, updated more than 1 year ago
Maria Betancourt
Created by Maria Betancourt over 5 years ago
41
0

Resource summary

RECURSIVIDAD
  1. CONCEPTO
    1. Se llama recursividad a un proceso mediante el que una función se llama a sí misma de forma repetida, hasta que se satisface alguna determinada condición. El proceso se utiliza para computaciones repetidas en las que cada acción se determina mediante un resultado anterior. Se pueden escribir de esta forma muchos problemas iterativos.
    2. CARACTERISTICAS
      1. La recursividad debe terminar alguna vez: caso base
        1. Cada nueva formulación estamos más cerca del caso final (o base).
          1. Las funciones recursivas son útiles para “recorrer” estructuras anidadas, como árboles.
          2. TIPOS
              1. SIMPLE
                1. Aquella en cuya definición sólo aparece una llamada recursiva. Se puede transformar con facilidad en algoritmos iterativos , ejemplo el factorial
                  1. Ej: Par o Impar: int par( int nump ) { if(nump==0) return(1); return( impar(nump-1)); } int impar( int numi ) { if(numi==0) return(0); return( par(numi-1)); }
                2. ANIDADA
                  1. En algunos de los arg. de la llamada recursiva hay una nueva llamada a sí misma
                    1. int Ack( int n, int m ) /* ej: Ackerman */ { if(n==0 ) return(m+1); else if(m==0) return(Ack(n-1,1)); return(Ack(n-1, Ack(n,m-1))); }
                  2. MULTIPLE
                    1. Es cuando hay más de una llamada a sí misma dentro del cuerpo de la función, resultando más difícil de hacer de forma iterativa
                      1. int Fib( int n ) /* ej: Fibonacci */ { if(n<=1) return(1); return(Fib(n-1) + Fib(n-2)); }
                3. ventajas
                  1. Soluciones simples, claras.
                    1. Soluciones elegantes.
                      1. Soluciones a problemas complejos.
                      2. Desventajas
                        1. Sobrecarga asociada con las llamadas a subalgoritmos
                          1. Una simple llamada puede generar un gran número de llamadas recursivas. (Fact(n) genera n llamadas recursivas)
                            1. El valor de la recursividad reside en el hecho de que se puede usar para resolver problemas sin fácil solución iterativa.
                            Show full summary Hide full summary

                            Similar

                            Mapas mentales con ExamTime
                            Nazareth Olivo
                            1-20 B
                            T hbjk
                            fichas de estudio
                            Guadalupe Reyes Soriano
                            Esquemas
                            Ximena Barrera
                            Music and its most prominent types
                            Elina Sandoval
                            CENEVAL PARTE 1
                            Yesenia Madai Aquino
                            Neurochir -Leziunile nervilor periferici
                            SlepoiBandit .
                            Vertebrate animals
                            Eliana Sandoval
                            Tejidos básicos
                            Andrea Celedón
                            Biochimia: Metabolismul lipidelor 201-250
                            Sorin Monster