Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public int getGrado(Grafo<T> grafo){
- ListaGenerica<Vertice<T>> vertices = grafo.listaDeVertices();
- vertices.comenzar();
- int[][] grados = new int[vertices.tamanio()][2]; //[n][0]= g. entrada, [n][1]= g. salida.
- while(!vertices.fin()){
- Vertice<T> actual = vertices.proximo();
- ListaGenerica<Arista<T>> adyacentes = grafo.listaDeAdyacentes(actual);
- adyacentes.comenzar();
- while(!adyacentes.fin()){
- grados[actual.posicion()][1]++; //inc g. salida del actual
- grados[adyacentes.proximo().verticeDestino().posicion()][0]++; //inc. g. entrada del destino
- }
- }
- int maxGrado = -1;
- for(int i=0;i<vertices.tamanio();i++)
- maxGrado = Math.max(maxGrado, (grados[i][0] + grados[i][1]));
- return maxGrado;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement