Just about every CS student is presented with this problem at some point. The Knight's Tour is a game where you try to circumnavigate a chess board with a knight, moving the way a knight moves, and you need to hit every spot exactly once. This program uses recursion to work out a solution for any given square board (meaning the # of rows = the # of columns) It's not perfect but in most cases it can work out a solution in a fraction of a second due to the use of some very intelligent algorithm which I found via wikipedia. In the case where this algorithm doesn't find a solution it will use recursive backtracking to try every possible solution and if there is one it'll find it (eventually)