Exhaustive search

Exhaustive Search is about trying every possible way to search for a solution. It is usually combined with pruning to reduce the number of items to search for. It is also known as Backtracking.

Basically, the psuedo code is:

backtrack(int sol, int depth) {  if (issolution(sol)) printsolution(sol) else{ solgenerated = generatesolution backtrack(solgenerated, depth+1) } }