## Knight’s Tour Problem Simply Explained

Introduction This post is a continuation of the back tracking series. You can refer to other similar posts here. In this post we will be discussing the Knight's Tour Problem. The problem states that, given a N * M chessboard, a Knight's Tour is defined as the sequence of moves of a Knight, such that the Knight visits every square only once. Does this sound similar? Yes it is similar to finding the Hamiltonian Path as defined in this post. Approach for solving the Knight's Tour problem Here I define the backtracking approach to solve this problem. Let the Knight start from any location...

## Pair of Numbers to obtain given sum

Introduction This problem is already defined in one of the previous post. You can read that to know the problem in more detail. The definition goes like this, find a pair of numbers to obtain given sum in an array. The task is to find two numbers in an array which when added will produce a desired sum. Approach to find a Pair of Numbers to obtain given sum As the theory is already mentioned in the previous post, let us directly jump to all possible solutions. Here I am defining three different solutions to this problem. And the idea is to build a basic understanding and then proposing the b...

## Solution to find Interleaving of Strings

Introduction This post is an enhancement over one of the previous posts where the task was to find if a given string C is an interleaving of strings A and B. To know more about the problem description, please visit the previous post Solution The previous solution is a iterative solution which requires lot of space. Here we will discuss a recursive solution. Hopefully with small code foot print. Before we jump into the code, let us understand the idea behind the solution. Here are the example Strings A, B and C A -> abcd B -> ade C -> abadcde The recursive algorithm...