Saltar a contenido

Clase 3: Funciones y procesos

Función vs proceso

  • Función recursiva: Es una función que se llama a sí misma
    • Caso base: Solución trivial (inmediata)
    • Caso recursivo: Nos lleva paulatinamente al caso base
  • Proceso recursivo: Es la forma en que se ejecuta (recursión o iteración)

DIseño de funciones con optimización de cola

  • Se agrega un acumulador que va ir “acumular” el resultado final
  • Al llegar al caso base retornamos el acumulador
  • El valor por defecto del acumulador es el caso base
  • En scala usamos @tailrec es una anotación para aplicar optimización de cola (tail recursion)