## Test: recurison vs. not (trivial)

What is the cost of a recursive algorithm vs. a non-recursive one?

Run this test again Return to test menu## Result: Discarded

The test labeled "**recursive**" was the faster by

*0.0043*seconds, (0.393% faster)

The **recursive** test took **1.0909** seconds.

The **non-recursive** test took **1.0952** seconds.

## Nitty-Gritty

Each test case ran 20 random code order iterations consisting of 286,741 loops for a total of 5,734,820 runs.

- Line execution difference (0.000001) milliseconds.

- Avg difference (0.215) milliseconds per 286,741 loops.

- Total difference 4.30 milliseconds for 5,734,820 loops

The iteration variablity for Code 1 was (5.6845) milliseconds and Code 2 was (4.3783) milliseconds. The lower and the closer together there values are the more accurate the results are.

## Code

The first test, "**non-recursive**", was:

/* function recurse_not($i) { $result = 0; while ($i > 0) { $result += $i; $i -= 5; } return $result; } */ $result = recurse_not(5000);

The second test, "**recursive**", was:

/* function recurse_normal($i) { if ($i > 0) return $i + recurse_normal($i - 5); else return 0; } */ $result = recurse_normal(5000);