Answer and Explanation:
Recursion is a technique to solve a problem where a function in a program calls itself at specified times.
The three situations when recursion is the single option available to solve a problem are:
- When a task is required to repeat itself without the use of loop.
- When we want to take a print of the result of the functions used in the program which calls itself in the order which is reversed. This makes use of stack.
- Where the solutions are provided such that it follows the order in solving from the inner most to the outer extreme level of the tasks. As in case of recursion in deleting the files and the directories, files are deleted followed by directories.