/interviewPrep

review arrays, search algorithms, collections interface

Primary LanguageJava

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)