¿Qué es la recursividad?
Es un proceso de recurrencia con n repeticiones, replicando algo que ya ocurrió. En Java es un procedimiento para resolver un problema complejo reduciéndolo a uno o más subproblemas; un método se puede llamar a si mismo.
Características de la Recursividad.
- Tiene las misma estructura que el problema original.
- Más simple de resolver.
- Los subproblemas se dividen usando el mismo procedimiento.
- Los subproblemas se hacen más simples.
Estructura general de un algoritmo recursivo.
n! = 1 * 2 * 3 * 4 ... *(n - 1) * n
Codificado en Java seria:
Public int factorial(int n) {
if (n == 0){
return 1;
} else {
return n * factorial(n - 1);
}
}
Donde el caso base es:
Public int factorial(int n) {
if (n == 0){
return 1;
}
}
Y el dominio es:
else {
return n * factorial(n - 1);
}
Otro ejemplo es la solución de la sucesión de Fibonacci, que es la suma de los dos números anteriores. Iniciando esta serie con 0 y 1, dicha sucesión es infinita...
Vídeo de ejemplo... ↓↓
No hay comentarios.:
Publicar un comentario