Implementando o BFS em Java
Sou iniciante em Java e preciso de ajuda.
Eu estou tentando implementar algoritmo Breadth First Search para resolver um jogo de quebra-cabeça (Unblock Me um jogo no Android). Eu terminei com a interface gráfica, mas estou preso com o algoritmo.
Até agora eu posso contar os movimentos disponíveis de cada bloco, que supostamente são os nós filhos do nó raiz. Cada nó (lista encadeada) tem a posição de cada bloco e todos os nós estão sendo armazenados em um Conjunto.
O que eu preciso agora é marcar cada nó como visitado, então eu não entro em um loop.
Eu apreciaria qualquer tipo de ajuda, e por favor me corrija se eu estiver enganado com alguma coisa.
Desde já, obrigado :)