C# LanguageRecursion


Observaciones

Tenga en cuenta que el uso de la recursión puede tener un gran impacto en su código, ya que cada llamada a la función recursiva se agregará a la pila. Si hay demasiadas llamadas, esto podría llevar a una excepción de StackOverflow . La mayoría de las "funciones recursivas naturales" se pueden escribir como una construcción de bucle for , while o foreach , y aunque no se vea tan elegante o inteligente será más eficiente.

Siempre piense dos veces y use la recursión con cuidado, sepa por qué lo usa:

  • la recursión debe usarse cuando se sabe que el número de llamadas recursivas no es excesivo
    • medios excesivos , depende de la cantidad de memoria disponible
  • recursion se usa porque es una versión de código más clara y limpia, es más legible que una función iterativa o basada en bucle. A menudo, este es el caso porque proporciona un código más limpio y más compacto (también conocido como menos líneas de código).
    • ¡Pero ten cuidado, puede ser menos eficiente! Por ejemplo, en la recursión de Fibonacci, para calcular el número n en la secuencia, ¡el tiempo de cálculo aumentará exponencialmente!

Si quieres más teoría, por favor lee:

Recursion Ejemplos relacionados