Recursive Algorithm Use Cases