• Nommer@sh.itjust.works
    link
    fedilink
    arrow-up
    4
    ·
    11 months ago

    Could your folder tree problem also be solved with a whole loop instead? I’m very new but it seems like recursion is harder but possibly more optimized approach to loops or am I incorrect here?

    • mercator_rejection@programming.dev
      link
      fedilink
      arrow-up
      8
      ·
      11 months ago

      Any recursive algorithm can be made iterative and vise versa. It really depends on the algorithm if the function calls are a major factor in performance.

    • Faresh@lemmy.ml
      link
      fedilink
      English
      arrow-up
      5
      arrow-down
      1
      ·
      11 months ago

      Recursion is never more efficient than the best equivalent iterative solution. Recursion however allows you to solve some problems very easily and very neatly.

    • coloredgrayscale@programming.dev
      link
      fedilink
      arrow-up
      2
      ·
      11 months ago

      A naive iterative implementation would be by adding and removing the folders/files from a list.

      If tail call optimization works on the (recursive) example then that’s (kinda) the compiler turning a recursive function into a loop.