---
# System prepended metadata

title: Untitled

---

Nome: Wilson
Exercicio 2)
```
/*
2) Implemente um algoritmo para identificar o vértice de menor grau em um grafo.

 */
package Grafos_Complementar;

public class Grafo_Complementar {

    private static int[][] grafo = {
        {0, 1, 1, 0, 0, 0, 0, 0},
        {1, 0, 1, 0, 0, 0, 0, 0},
        {1, 1, 0, 1, 1, 0, 0, 0},
        {0, 0, 1, 0, 0, 0, 1, 0},
        {0, 0, 1, 0, 0, 1, 1, 1},
        {0, 0, 0, 0, 1, 0, 0, 1},
        {0, 0, 0, 1, 1, 0, 0, 0},
        {0, 0, 0, 0, 1, 1, 0, 0}
    };

    public static void main(String[] args) {
        System.out.println("O menor vertice e " + verticeMenorGrau());
    }

    public static int verticeMenorGrau() {
        int retorno = 0;
        int indiceMenor = 0;
        int menor = Integer.MAX_VALUE;
        for (int i = 0; i < Grafo_Complementar.grafo.length; i++) {
            int valorGrau1 = 0;
            for (int j = 0; j < Grafo_Complementar.grafo[1].length; j++) {
                valorGrau1 += Grafo_Complementar.grafo[i][j];
            }
            if (valorGrau1 <= menor) {
                menor = valorGrau1;
                indiceMenor = i;
            }
        }
        return indiceMenor;
    }
}

```
Exercicio 3)
```
/*
2) Implemente um algoritmo para identificar o vértice de menor grau em um grafo.

3) Um Grafo Euleriano é um grafo que possui um ciclo que contém todas as suas arestas. Para possuir este ciclo, todos os vértices deste grafo precisam ter grau par.
Implemente um algoritmo para verificar se um Grafo é Euleriano ou não.

 */
package Grafos_Complementar;


public class Euleriano_ou_nao {
    private static int[][] grafo = {
        {0, 1, 1, 0, 0, 0, 0, 0},
        {1, 0, 1, 0, 0, 0, 0, 0},
        {1, 1, 0, 1, 1, 0, 0, 0},
        {0, 0, 1, 0, 0, 0, 1, 0},
        {0, 0, 1, 0, 0, 1, 1, 1},
        {0, 0, 0, 0, 1, 0, 0, 1},
        {0, 0, 0, 1, 1, 0, 0, 0},
        {0, 0, 0, 0, 1, 1, 0, 0}
    };
    
    public static void main(String[] args) {
        if (grafoeEuleriano() == true) {
            System.out.println("O grafo e Euleriano");
        }else{
            System.out.println("O grafo nao e Euleriano");
        }
    }

    public static boolean grafoeEuleriano() {
        boolean retorno = true;
        int indiceMenor = 0;
        int menor = Integer.MAX_VALUE;
        for (int i = 0; i < grafo.length; i++) {
            int valorGrau1 = 0;
            for (int j = 0; j < grafo[1].length; j++) {
                valorGrau1 += grafo[i][j];
            }
            if (!(valorGrau1 % 2 == 0)) {
                menor = valorGrau1;
                indiceMenor = i;
                retorno = false;
            }
        }
        return retorno;
    }
}

```