Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package ia_exercicio01; /** * * @author marco.silva2 */ public class BuscaLargura extends Busca { @Override public boolean busca(int i, int k) { count++; //valida se a posição esta dentro da matriz if ((i < 0 || i >=col) || (k < 0 || k >=lin)) { return false; //verifica se a posição é um obstaculo } else if (matriz[i][k] == '#') { return false; //verifica se a posição já foi percorrida } else if (matriz[i][k] == '-') { return false; //verifica se a posição é a final } else if (matriz[i][k] == 'F') { matriz[i][k] ='X'; imprime(); count++; System.out.println("Movimentos: "+count); return true; } else { matriz[i][k] = '-'; imprime(); if (busca(i, k + 1)) // direita return true; if (busca(i + 1, k + 1)) // diagonal direita baixo return true; if (busca(i - 1, k + 1)) // diagonal direita alto return true; if (busca(i + 1 , k)) // abaixo return true; if (busca(i - 1, k)) // acima return true; if (busca(i - 1, k - 1)) // diagonal esquerda abaixo return true; if (busca(i, k - 1)) // esquerda return true; if (busca(i - 1, k - 1)) // diagonal esquerda acima return true; } return false; } @Override public boolean buscaH(int i, int k, int fimX, int fimY) { throw new UnsupportedOperationException("Not supported yet."); } }
Compartilhar