title: Path-finding algorithm in C
body: <p>Ok so I have a board and I need to find all possible solutions of it. It <strong>starts at the top left corner</strong> of the board and by only going <strong>horizontally or vertically</strong>, it has to visit each element of the board. In order to successfully move to another element the <strong>first letter or the second letter must match</strong> with the previous. It can only <strong>visit each element once and only once</strong> but it can jump over it. So if I have a board like this:</p>
  
  <p>XY YX XX</p>
  
  <p>XX YY XY</p>
  
  <p>YX XY XX</p>
  
  <p>A sample solution path would be: XY->XX->YX->XX->XY->YY->YX->XX->XY</p>
  
  <p>I was thinking of using BFS but I haven't learned about queues yet so am I able to use it without them? This is in C btw, the reason is that the programming course I'm taking is only covering C.</p>