interviewPrep
Head recursion is used to recursive vowel finder
Tail recursion
Iteration uses iteration statement (for, while, or do...while) Recursion uses selection statement (if, if..else, or switch)
both involve iteration: iteration has explicit iteration while recursion has repeated method calls
both involve termination test: iteration terminates when loop-continuation condition fails, whereas recursion terminates when a base case is reached
both gradually approach termination: iteration modifies counter until failed condition is met, whereas recursion keeps producing smaller versions of the original problem until the base is reached
both risk infinite loops: an infinite loop occurs with iteration if the loop-continuation test never becomes false, whereas infinite recurison occurs if the recursion step does not reduce the problem each time in a manner that converges on the base case (or if base case is never tested)