ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Ventajas y desventajas de la recursión


Enviado por   •  24 de Noviembre de 2023  •  Informes  •  923 Palabras (4 Páginas)  •  25 Visitas

Página 1 de 4

Ventajas y desventajas de la recursión

la recursión en programación tiene ciertas ventajas y desventajas por lo cual se debe considerar al decidir utilizar una de ellas en un contexto determinado. Estos so algunas de las ventajas y desventajas más comunes de la recursión:

ventajas:

  1. Claridad y simplicidad. - La recursión a menuda manera permite implementar soluciones de manera mas clara y concisa, para la resolución de problemas que se puedan presentar de manera eficaz e inmediata.

  1. Manejo en estructuras de datos complejas. - Es eficaz en el desarrollo de poder trabajar con estructuras de datos complejos como árboles y listas enlazadas, donde el enfoque recursivo demuestra la estructura intrínseca de los datos.
  1. Fácil resolución de problemas divididos. - Muchos de los casos, la recursión es útil para abordar problemas divididos, donde un problema se divide en subproblemas mas pequeños que son más fáciles de resolver.
  1. Facilitar la lectura del código. -  Facilita en situaciones donde la lógica de un problema definida de manera recursiva, el código resultante puede ser mas fácil de leer y comprender.
  1. Reducción de código. - realizando una comparación con soluciones iterativas, la recursión a veces puede reducir la cantidad de código para implementar un a mejor solución.

Desventajas de la recursión:

  1. Complejidad de rendimiento. - En algunos casos, la implementación recursiva puede no tener una mayor decisión de rendimiento ante soluciones iterativas, debido al costo adicional de las llamadas a funciones y la gestión de la pila de llamadas.

  1. Consumo de memoria. - Ciertamente cada llamada recursiva acumula una entrada a la pila de llamadas, lo que puede llevar a un mayor consumo de memoria, especialmente para los problemas con una mayor profundidad de una recursión significativa.
  1. Dificultad de depuración. - La depuración de funciones recursivas puede ser mas complicada, de modo que es necesario entender la pila de llamadas y seguir el flujo de ejecución a través de múltiples niveles de recursión.
  1. Limite de profundidad de recursión. - En algunos lenguajes de programación tienen limites, en la profundidad de la recursión para evitar el desbordamiento de la pila de llamadas, lo que se asume como una limitación en problemas que requieran una recursión.
  1. Posible ineficiencia en algunos problemas. - En general las soluciones recursivas son más ineficientes con respecto al tiempo y al espacio que las soluciones iterativas. Esto ocurre debido a las llamadas recursivas a los módulos, la creación de variables dinámicas en la pila de activación, la duplicación de variables por parámetros por valor, etc. (OVERHEAD- sobrecarga) Algunas soluciones recursivas pueden repetir cálculos innecesariamente. Por ejemplo: revisar soluciones del número de Fibonacci. ¿Qué ocurre en la solución clásica?

Tipos de recursión:

  • Según desde donde se realice el llamado recursivo:

           Directa. - la función se llama a si misma.

Indirecta. - La función A llama a la función B, esta ultima llama a la                                                                                función A.

...

Descargar como (para miembros actualizados)  txt (5 Kb)   pdf (77 Kb)   docx (501 Kb)  
Leer 3 páginas más »
Disponible sólo en Clubensayos.com