Está en la página 1de 1

Recursividad

Es la propiedad de un método por el cual puede llamarse a si mismo, se puede


utilizar como una alternativa a la iteración, el uso de la recursión permite a los
programadores especificar soluciones naturales y sencillas que en caso contrario
serian difíciles de resolver por eso la recursión es una herramienta poderosa e
importante en la resolución de problemas y en la programación.
Un método recursivo se invoca a si mismo de forma directa o indirecta, un requisito
para que un algoritmo recursivo sea correcto es que no genere una secuencia de
este tipo no puede terminar nunca, la definición recursiva debe incluir una condición
de salida que se llama componente base, en el que f(n) se defina directamente; es
decir no recursivamente, para uno o más valores de n.
La recursividad indirecta se produce cuando un método llama a otro, que
eventualmente terminara llamando de nuevo al primer método.
Para evitar que un método recursivo continue llamándose a si mismo
indefinidamente y desborde la pila que registra las llamadas hay que fijar en el que
una condición de parada de las llamadas recursivas y evitar las indefinidas.
La recursión tiene muchas desventajas, se invoca repetidamente al mecanismo de
llamadas a métodos a métodos y en consecuencia se necesita un tiempo
suplementarios para realizar cada llamada , cada llamada recursiva hace que se
realice una nueva creación y copia de las variables de la función, esto puede
consumir memoria.

También podría gustarte