Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Entre para seguir isso  
Vanderleia da S. Montenegr

Grafo não orientado

Recommended Posts

Boa noite, preciso implementar um programa em java que saiba quantos grafos e quais componentes conexas foram usadas para formar o grafo. lido de um arquivo TXt, fazer a leitura eu consegui so não estou conseguindo montar....

 

import java.util.List;

import java.util.ArrayList;


public class Grafo {
    
public class Vertice {
 
      String nome;
 
       List<Aresta> adj;

 
       Vertice(String nome) {


            this.nome = nome;
 
          this.adj = new ArrayList<Aresta>();
 
       }

   
     void addAdj(Aresta e) {

            adj.add(e);
   
     }
    }

    public class Aresta {

        Vertice origem;
 
      Vertice destino;

   
     Aresta(Vertice origem, Vertice destino) {
 
          this.origem = origem;

            this.destino = destino;


        }
 
  }

    List<Vertice> vertices;
 
  List<Aresta> arestas;

 
   public Grafo() {

        vertices = new ArrayList<Vertice>();
    
    arestas = new ArrayList<Aresta>();
 
  }

    Vertice addVertice(String int ) {

        Vertice v = new Vertice(int);
   
     vertices.add(v);
   
     return v;
    }

   
 Aresta addAresta(Vertice origem, Vertice destino) {
 
       Aresta e = new Aresta(origem, destino);
 
       origem.addAdj(e);
 
      arestas.add(e);
   
     return e;
    
}

 }

 

 

public class TestGrafo {
   
    /**
     * @param args the command line arguments
     * @throws java.io.IOException
     */
    @SuppressWarnings("empty-statement")
    public static void main(String[] args) throws IOException {
        // TODO code application logic here
        File arq =  new File ("C:\\Users\\wand\\Documents\\NetBeansProjects\\grafo\\src\\grafow\\Arquivo.txt");
              
        try{
        // verifica se o arquivo exiiste true    
        boolean existe= arq.exists();
        //false cria um arquivo vazio
        //boolean createNewFile = arq.createNewFile();
        
        System.out.println("arquivo existe \n"+ existe);   
        //criar arquivo
        arq.createNewFile();
        FileReader fr = new FileReader(arq);
        BufferedReader br = new BufferedReader (fr);
        // enquanto tiver linha
        while (br.ready()){
            //le proxima linha
            String linha = br.readLine();
            List a = new ArrayList();
            a.add(linha);
           
            for (int i=0; i<a.size(); i++){
                
               for (int j=0; j< a.size(); j ++)
             
               System.out.println(a.get(i));
               
               
           }  
            
        }
        fr.close();
        br.close();
          
        }catch (IOException e){
        }
    
}
}

o meu arquivo lido

arquivo existe
true
1 2 3 4 5 6 7 8 9 10
1 3
1 8
2 6
3 7
3 8
2 6
3 7
3 8
4 5
4 10
CONSTRUÍDO COM SUCESSO (tempo total: 9 segundos)

 

agora tenho que ler e aparecer por exemplo

Quantidade: 4 grafos

1 3 7 8

2 6

4 5 10

9,

não consigo terminar...

se puderem me ajudar agradeço sou nova na area de programação

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Entre para seguir isso  





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×