Ejemplo n.º 1
0
 void SearchVizinhos(Bloco origem, Bloco destino)
 {
     foreach (var vizinho in origem.Vizinhos)
     {
         if (vizinho.Nome == destino.Nome)
         {
             caminhos.Add(vizinho);
             var novalista = new Bloco[caminhos.Count()];
             caminhos.CopyTo(novalista);
             listaBlocos.Add(novalista.ToList());
             caminhos.Remove(vizinho);
             break;
         }
         if (!caminhos.Contains(vizinho))
         {
             caminhos.Add(vizinho);
             SearchVizinhos(vizinho, destino);
             caminhos.Remove(vizinho);
         }
     }
     caminhos.Remove(origem);
 }