**What is Backtracking Programming??**

Recursion is the key to backtracking programming. As the name suggests we backtrack to find the solution. We start with one possible move out of many available moves and try to solve the problem if we are able to solve the problem with the selected move then we will print the solution else we will backtrack and select some other move and try to solve it. If none of the moves work out we will claim that there is no solution to the problem.

**Generalized Algorithm:**