>This problem doesn't require a recursive solution, even though one could be implemented. However, in some cases a recursive solution isn't only the best way, it's the only way.
I think that I read somewhere that any solution that can be solved with recursion, can also be solved without it. Now, this is highly theoretical, and doesn't mean that it actually should be done; I understand that a significant amount of work may be required to avoid the recursion.
Difference in opinions hath cost many millions of lives: for instance, whether flesh be bread, or bread be flesh; whether whistling be a vice or a virtue; whether it be better to kiss a post, or throw it into the fire... (from Gulliver's Travels)