First implementation, recursion, iteration, XOR
First implementation, use two pointers