All pastes #425026 Raw Edit

ControleNo / Busca

public java v1 · immutable
·published 2007-04-05 05:26 UTC
rendered paste body
import java.util.Vector;import javax.swing.JOptionPane;class ControleNo {        public ControleNo(String n, String p, int l) {        no = n;        pai = p;        nivel = l;    }    private String no;    private String pai;    private int nivel;    public String getNo() {return no;}    public void setNo(String no) {this.no = no;}    public String getPai() {return pai;}    public void setPai(String pai) {this.pai = pai;}    public int getNivel() {return nivel;}    public void setNivel(int nivel) {this.nivel = nivel;}}public class Busca {        public Busca() {}        public static boolean eRepetido (int i, Vector <ControleNo> aux, String possivelCidade) {        for (int z=0;z<=i;z++) {            if (aux.get(z).getNo() == possivelCidade) {                if (aux.get(z).getNivel() <= i+1) {                    return true;                }            }                        }        return false;    }        public static Vector amplitude(Estado e, String inicial, String objetivo) {                Vector v = new Vector();                Vector <ControleNo> no = new Vector<ControleNo>(1);        no.add(new ControleNo(inicial, "", 0));                int i = 0;        while (i<no.size()) {            if (no.get(i).getNo() == objetivo) break; // verifica se chegou onde queria            for (int j=0; j < e.v.size();j++) {                if (no.get(i).getNo() == e.v.get(j).getCidEsq() && !eRepetido(i,no,e.v.get(j).getCidDir())) {                    no.add(new ControleNo(e.v.get(j).getCidDir(),no.get(i).getNo(),i+1));                }                if (no.get(i).getNo() == e.v.get(j).getCidDir() && !eRepetido(i,no,e.v.get(j).getCidEsq())) {                    no.add(new ControleNo(e.v.get(j).getCidEsq(),no.get(i).getNo(),i+1));                }            }            i++;        }        v.add(no.get(i).getNo());        v.add(no.get(i).getPai());        while (no.get(i).getPai() != "") {            /* O GRANDE PROBLEMA ESTÁ AQUI!                   * NÃO SEI RESOLVER :(   */        }                java.util.Collections.reverse(v);        return v;    }}