Category:Recursion: Difference between revisions

m
Grammar fix
m (Should have proofread)
m (Grammar fix)
Line 16:
The benefits of this optimization are primarily [[System stack|stack]] related. Transforming recursive functions into iterative functions can save memory and time.
 
Memory is saved by reducing an entire call stack intoto one function call. This way, more complex calls can be evaluated without running out of memory.
 
Time is saved because each function return takes a long time relative to a simple branch. This benefit is usually not noticed unless function calls are made that would result in large and/or complex call trees. For example, the time difference between iterative and recursive calls of <tt>fibonacci(2)</tt> would probably be minimal (if there is a difference at all), but the time difference for the call <tt>fibonacci(40)</tt> would probably be drastic.
Anonymous user