Tabla de contenido
¿Qué es recursividad de pila?
Consiste en realizar una serie de cálculos sucesivos hasta obtener un resultado que se aproxime de forma “aceptable” (entre más grande la cantidad de cálculos mayor la aproximación).
¿Qué es la recursividad de cola?
La recursividad de “cola” (traducción libre de tail recursion) es un mecanismo que permite tener funciones recursivas sin temer por posibles desbordamientos de pila. Sabemos que cuando se llama a una función se crea un frame de pila que contiene los valores de las variables locales y la dirección de retorno.
¿Qué causa el desbordamiento de la pila?
Demasiadas llamadas recursivas a un método podrían causar un desbordamiento de la pila. Como el almacenamiento para los parámetros y las variables locales está en la pila y cada llamada nueva crea una nueva copia de estas variables, es posible que la pila se haya agotado.
¿Cómo funciona la recursión?
Lo anterior queda explicado de forma visual en el siguiente diagrama: Un punto clave del uso de la recursión es el de contar con un caso base que marque el final de las llamadas a la función, de otra forma, terminarás con un ciclo infinito de llamadas recursivas que forzarán el cierre del programa.
¿Qué es la recursividad en programación?
En el post de hoy trataremos un tema muy importante dentro de la programación, como es, la recursividad, es cierto que es un termino que cuando lo estudias por primera vez cuesta, pero es muy sencillito. Hay que decir que no está destinado únicamente al entorno .Net, sino que sirve para todos los lenguajes de programación.
¿Cuál es la complejidad de una función recursiva?
Como se realiza más de un llamado a la función recursiva, la complejidad de la función es exponencial, pues la cantidad de operaciones realizadas crece exponencialmente con cada iteración. Y mientras más grande sea el número n, más dificil será representar la complejidad de la función débido a la gran cantidad de operaciones realizadas.