Advertisement
Guest User

Untitled

a guest
Jul 7th, 2015
180
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 0.75 KB | None | 0 0
  1.     public int getGrado(Grafo<T> grafo){
  2.        
  3.         ListaGenerica<Vertice<T>> vertices = grafo.listaDeVertices();
  4.         vertices.comenzar();
  5.         int[][] grados = new int[vertices.tamanio()][2]; //[n][0]= g. entrada, [n][1]= g. salida.
  6.         while(!vertices.fin()){
  7.             Vertice<T> actual = vertices.proximo();
  8.             ListaGenerica<Arista<T>> adyacentes = grafo.listaDeAdyacentes(actual);
  9.             adyacentes.comenzar();
  10.             while(!adyacentes.fin()){
  11.                 grados[actual.posicion()][1]++; //inc g. salida del actual
  12.                 grados[adyacentes.proximo().verticeDestino().posicion()][0]++; //inc. g. entrada del destino
  13.             }
  14.         }
  15.        
  16.         int maxGrado = -1;
  17.        
  18.         for(int i=0;i<vertices.tamanio();i++)
  19.             maxGrado = Math.max(maxGrado, (grados[i][0] + grados[i][1]));
  20.        
  21.         return maxGrado;
  22.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement