Three things to remember about recursion:
1. Always make progress towards a solution every time you recurse.
2. Always have a break point where the function stops calling itself.
3. If you don’t design your recursive function right, or if you overuse the method, you can exhaust your stack, and the program will run out of memory.
Copyright (c) 2013 Rodrigo Silveira http://www.easylearntutorial.com