Numero de caminhos

5 respostas
T

aloha…
Eu estou fazendo um método que retorna o número de caminhos que existe entre 2 vértices do grafo, mas não está funcionando… alguém sabe o que está errado ? é que ele sempre retorna 0 .

Vertex init, end;

	WeightedEdge we;

	public Vector<Integer> pesos = new Vector<Integer>();

	public Vector<String> arcos = new Vector<String>();

	String s;

	int nCminhos;

public int numCaminhos(String initVertex, String endVertex){
		
		init = grafo.get(initVertex);

		end = grafo.get(endVertex);
		
		Iterator vit = init.getEdgesIterator();
		if(vit.hasNext()){
		we = (WeightedEdge) vit.next();
		Vertex v = we.getEnd();
		
		
				if(v.equals(endVertex)){
					nCminhos++;
				}
				
				else{
					
				nCminhos=nCminhos+numCaminhos(v.toString(),endVertex);
				}
		}
				return nCminhos;
	
			}

5 Respostas

M

por um acaso no lugar desse if,logo abaixo, não seria um while…tente ai e ve se funciona!!

if(vit.hasNext()){ [/code]

T

Realmente tem razão… faz mais sentido ser um while… mas continua a não funcionar :S

M

Assim fica dificil de descobrir o pq, manda todo o código, se não de pra postar todo ele aqui manda ai pro meu mail–>[email removido]…não te prometo nada, mas vou da uma olhada com calma. Falow’s!

T

aloha…

muito obrigado por se ter disponibilizado para me tentar ajudar… agradeço muito a sua ajuda…

já enviei para o seu mail, visto que era muito código para postar aki…

agradecida…

M

Faltava apenas uma coisinha …
troque no método numCaminho da classe caminhos o seguinte trecho de código

if(v.equals(endVertex)){

por…

if(v.toString().equals(endVertex)){

Vc estava comparando um objeto com uma String isso nunca daria certo…Espero que tenha ajudado. Falows!

Criado 18 de maio de 2006
Ultima resposta 18 de mai. de 2006
Respostas 5
Participantes 2