Algoritmo recursivo
Tiempo total: 42 días con 17:39:8 hrs
Los algoritmos recursivos son los que expresan la solución de un problema en términos de llamadas a sí mismos, este tipo de llamadas se conocen como llamadas recursivas o recurrentes.
Como se usa
Para utilizar la recursividad es necesario tener un problema, el cual pueda que tenga varias soluciones, pero en programación, se deberá hacer uso de la misma función para ir devolviendo el valor asignado para esa iteración, es decir que si se llama a la función recursiva, esta realizara la operación respectiva, la cual se deberá operar con el resultado de la siguiente iteración.
En un ejemplo sencillo, se puede tener una multiplicación, es decir una suma de números n veces, para lo cual sería:
Sumar(suma);
suma + Sumar(suma);
suma + Sumar(suma);
suma + Sumar(suma);
suma + Sumar(suma);
suma + Sumar(suma);
La idea básica es aplicar programación para no caer en un ciclo infinito al momento de utilizar recursividad. La función Sumar(suma) se puede observar como significa suma + Sumar(suma) pero deben de existir condicionales con contadores pues el ejemplo anterior suma al infinito (O según las capacidades establecidas por el software que corre el algoritmo). Por ejemplo, la solución:
Sumar(suma, n){
Si n>0 entonces
Regresar suma+Sumar(suma, n-1);
Si no entonces:
Regresar 0;
}
La recursividad es permitida en los programas más modernos, como por ejemplo java, c++, c, visual Studio y adobe flash entre otros. Así también no es permitida en los programas antiguos, como por ejemplo Turbo Pascal, Algol o cobol.
Referencia
[http://es.wikipedia.org/wiki/Algoritmo_recursivo]