예제 #1
0
        // -> Retorna se um grafo tem ciclo
        public bool HasCiclo()
        {
            if (this.HasLoop() && this.IsConexo())
            {
                return(false);
            }

            BuscaProfundidade buscaProfundidade = new BuscaProfundidade();

            buscaProfundidade.Buscar(this);
            return(this.Vertices.Any(v => v.ListaAdjacencia.Any(a => a.TipoAresta == "Retorno")));
        }
예제 #2
0
        // -> Retorna se um grafo é conexo
        public bool IsConexo()
        {
            BuscaProfundidade buscaProfundidade = new BuscaProfundidade();

            return(buscaProfundidade.Buscar(this) == 1);
        }