Recursividad-Flores Flota Carlos Luis

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 8

Ingeniería en Sistemas

INSTITUTO UNIVERSITARIO DE YUCATÁN CAMPUS TABASCO

Lic. En Ingeniería en Sistemas

Alumno:

Carlos Luis Flores Flota

Tema:

Recursividad

Asignatura:

Programación orientada a objetos

Profesor:

Alfredo de Jesús Gutiérrez Gómez

Villahermosa Tabasco a viernes, 23 de junio de 2023


Ingeniería en Sistemas

Tabla de contenido
INTRODUCCIÓN ............................................................................................. 3

1 ¿QUÉ ES LA RECURSIVIDAD EN PROGRAMACIÓN JAVA? .................... 4

1.1 tipos de recursividad ............................................................................... 4

CONCLUSIÓN ................................................................................................. 7

BIBLIOGRAFÍA ................................................................................................ 8

Imagen 1 Tipos de recursividad. Ciclo de una recursión. Fuente: (Academia


Lab, 2023) ............................................................................................................ 4
Imagen 2 Fibonacci recursivo y con ciclos en Java. Fuente: (Parzibyte blog,
2019) .................................................................................................................... 6
Ingeniería en Sistemas

INTRODUCCIÓN

Dentro de las ramas de la informática, la recursividad es un método importante


para la programación ya que es un recurso que se emplea a sí mismo.

Este método suele ser eficiente que otras soluciones para determinados
problemas no lineales que resultar ser complejos a la hora de resolver.

En las siguientes páginas se elaboró un resumen con el objetivo de entender


con más claridad cómo funciona este recurso, ya que, aunque esta forma, pero
resulta útil para resolver problemas definibles en sus propios términos.
1 ¿QUÉ ES LA RECURSIVIDAD EN PROGRAMACIÓN JAVA?
La recursividad en programación Java es un concepto que, normalmente,
cuesta entender a los principiantes en este lenguaje. Se trata de algo que puede
parecer bastante complejo a primera vista, pero que, en realidad, es relativamente
sencillo.

Resumiéndolo mucho, podemos decir que la recursividad en programación


Java es la capacidad que existe en este lenguaje de crear funciones1 que llamen
a otras funciones. De esta manera se evita el uso de bucles u otros iteradores.
Se trata de una técnica de programación que permite crear instrucciones que se
repitan un número n de veces, por eso se trata de una forma de programación
que permite evitar el uso de estructuras de datos repetitivas.

1.1 tipos de recursividad

Imagen 1 Tipos de recursividad. Ciclo de una recursión. Fuente: (Academia Lab, 2023)

Dentro de la teoría de la recursión, se tiene que existen diferentes tipos de


recursión:

1
Una función es un conjunto de acciones que se van a ejecutar, las cuales pueden ser invocadas con algún nombre.
Recursión directa: Cuando el código F tiene una sentencia que involucra a
F.
Recursión indirecta o cruzada: Cuando la función F involucra una función
G que invoca a la vez una función H, y así sucesivamente, hasta que se
involucra la función F. Por ejemplo, el algoritmo de Par o impar.

int par (int n)

if (n==0) return n+1;

return impar(n-1);

int impar(int n)

if (n==0) return 0;

return par(n-1);

A continuación, se expone otro ejemplo de programa que utiliza recursión


indirecta, y nos dice si un número es par o impar. Cabe mencionar que existen
otros métodos mucho más sencillos para determinar la solución a este problema,
basta con determinar el resto de la división entre dos. Por ejemplo: si hacemos
par(2) devuelve 1 (cierto). Si hacemos impar(4) devuelve 0 (falso).

int par(int n)

if (n == 0) return 1;

return impar(n-1);
}

int impar(int n)

if (n == 0) return 0;

return par(n-1);

Recursión simple: - Aquella en cuya función solo aparece una llamada


recursiva. Se puede transformar con facilidad en algoritmos iterativos.
Recursión múltiple: Se da cuando hay más de una llamada a sí misma
dentro del cuerpo de la función, resultando más difícil de transformar a
iterativa. Por ejemplo, el algoritmo de Fibonacci.

Imagen 2 Fibonacci recursivo y con ciclos en Java. Fuente: (Parzibyte blog, 2019)

int fibo(int n)

if (n<=1) return 1;

else

return fibo(n-1) + fibo(n-2);

}
CONCLUSIÓN

En resumen, se logró entender que un programa llega a ser recursivo cuando


se invoca a sí mismo, dicho proceso de recursividad se puede convertir en
iterativo y viceversa.

Permite elaborar algoritmos más simples y compactos, pero tiene la


característica de ser más lenta y consumir más recursos al tratar de ejecutarse,
esto se debe a que las series llamadas recursivas supone un gran número de
operaciones con la pila de ejecución lo cual resulta más lento que una serie de
operaciones iterativas y, además, requiere un espacio considerable
BIBLIOGRAFÍA
Academia Lab. (23 de 06 de 2023). Recursividad (computación). Obtenido de
Academia Lab: https://academia-lab.com/enciclopedia/recursividad-
computacion/

LUDA UAM. (2023). TIPOS DE RECURSIVIDAD. Obtenido de LUDA UAM:


http://aniei.org.mx/paginas/uam/CursoAA/curso_aa_09.html#:~:text=Recursi
%C3%B3n%20directa%3A%20Cuando%20el%20c%C3%B3digo,algoritmo
%20de%20Par%20o%20impar

Parzibyte blog. (28 de 02 de 2019). Sucesión fibonacci en Java: método iterativo y


recursivo. Obtenido de Parzibyte blog:
https://parzibyte.me/blog/2019/02/28/sucesion-fibonacci-java-metodo-
iterativo-recursivo/

Tokio School. (11 de 05 de 2022). Recursividad en programación Java: ¿qué es?


Obtenido de Tokio School:
https://www.tokioschool.com/noticias/recursividad-programacion-
java/#:~:text=Este%20t%C3%A9rmino%20hace%20referencia%20a,al%20i
nicio%20de%20la%20llamada

También podría gustarte