To understand recursion, you must understand recursion.
simple base case(s).... i.e. it must stop
problem shrinks itself toward the base case ... i.e. it must reduce
factorial fac(n) = n * fac(n-1);
fibonacci fib(n) = fib(n-1) + fib(n-2);
reverse print
palindrome
how recursion works
the equivalency between iteration and recursion
the tradeoff between iteration and recursion
different ways of using recursion (tail recursion vs divide-n-conquer recursion)
the complexity of recursion algorithm
understand the sequence of call/return in recursive functions
two popular recursion examples are illustrated in separate pages: find largest in array and tower of Hanoi