Esta estudando um pouco de Java estes tempo e me deparei com um exercício bastante interessante no Livro do Deitel, o Passeio do cavalo.

O passeio do cavalo é um problema matemático envolvendo o movimento da peça do cavalo no tabuleiro de xadrez. Coloca-se o cavalo em uma das posições de um tabuleiro de xadrez vazio e deve-se movimentar o cavalo seguindo as regras do xadrez, ou seja, movimentar o cavalo em “L” para que ele passe por todas as 64 casas do tabuleiro sem repetir nenhuma.

Movimentos realizados pela peça  do xadrez cavalo cavalo
Movimentos do Cavalo

Existem dois tipos de Passeio do Cavalo o passeio aberto, onde o cavalo para em qualquer casa do tabuleiro e o passeio fechado onde o cavalo para em uma casa em que, no próximo movimento, pare na casa onde começou.

Aqui você pode fazer o download do código que eu criei em Java de um passeio aberto, ele segue um heurística de acessibilidade que consta no livro do Deitel que pode ser vista abaixo.

Heurística para o passeiro do cavalo retirado do livro Java: Como Programar

A heurística de acessibilidade consiste em que quanto mais no canto o cavalo está mais difícil é move-lo, então estas casas devem ser passadas primeiro, como vemos na imagem da heurística acima, as casas dos quatro cantos permitem somente dois movimentos, enquanto as casas centrais permitem todos os oito.

Foi isso então, se alguém quiser modificar o código(que não está muito elegante) fique a vontade, só peço que deixe um comentário com o código ou me envie por e-mail para mim anexar ao post.