Sometimes, recursion is indirect. Method a calls method b which in turn calls method a which in turn calls b.
Sometimes, you accidentally use recursion when you insert a call to the old method a in an overridden method a, and forget to say super. a();
The usual way to apply recursion is to divide a maxi-problem into two or more mini-problems, solve the minis, and combine their solutions to find the answer to the maxi-problem. The recursive aspect means that you apply the same technique to solve the mini-problems: Split them into micro-problems, solve the micros, and combine their solutions to solve the minis. And the micro-problems split into nano-problems, and so on. As the levels descend you eventually arrive at problems that are so small they can be solved by some other means (this is sometimes called the ground case).Each small problem’s solution is passed back to the recursive step that asked for it, where it gets combined with the solutions of other small problems to solve the larger problem.
~ Eric Sosman
|
|
You can get the freshest copy of this page from: | or possibly from your local J: drive (Java virtual drive/mindprod.com website mirror) |
| http://mindprod.com/jgloss/recursion.html | J:\mindprod\jgloss\recursion.html | |
![]() | Please email your feedback for publication,
letters to the editor, errors, omissions, typos, formatting errors, ambiguities, unclear wording,
broken/redirected link reports, suggestions to improve this page or comments to
Roedy Green :
| |
| Canadian Mind Products | ||
| mindprod.com IP:[65.110.21.43] | ||
| view Blog | Your face IP:[38.107.179.211] | |
| Feedback | You are visitor number 23,644. | |