A Java solution to The Knight's Tour
The Knight's Tour problem challenges programmers to determine all of the ways a knight can traverse a chess board such that it travels to every square on the board once and only once.
This solution relies on a depth-first recursive algorithm as well as a stack to save valid board states.