Ajuda Com União entre 2 vetores

1 resposta
T

Bom dia pessoal estou precisando de um auxilio para resolver como fazer união entre 2 vetores .

int  i = 0, cont= 0 , vet1[] = new int[10], vet2[] = new int[10], vet3 [] = new int[vet1.length+vet2.length] ,vet4[] = new int[10] ;
		
	for (  i = 0; i < 10 ; i++){
	
       vet1[i] = InOut.leInt(" Entre com um valor para o vetor A ("+(i+1)+"/"+10+")"); // ENTRO COM VALORES PARA O 1º VETOR
       	
	}
        
    for(i = 0 ; i < 10 ; i++){
            
        vet2[i] =InOut.leInt(" Entre com um valor para o vetor B ("+(i+1)+"/"+10+")"); // ENTRO COM OS VALORES PARA O 2º VETOR
       
    }

// UNIÃO ENTRE 2 VETORES
        
    for(i = 0 ; i < 10 ; i++){
            
       for( int j = 0 ; j < 10 ; j++){
         
            if(vet1[i] != vet2[j]){	 
			
              vet3[i] = vet1[i] ;
              
              if (vet3[i]!=vet2[j]){
                  
                 vet3[i]=vet2[j];    // ERRO 
                   
                    
              }
            }	
       }
    }
    
//INTERSEÇÃO ENTRE 2 VETORES    

    for(i = 0 ; i < 10 ; i++){
            
       for( int j = 0 ; j < 10 ; j++){
         
            if(vet1[i] == vet2[j]){	 
			
                 vet4[i] = vet1[i] ;
                    
            }	
	}
            
    }
System.out.print(" O resultado da Interseção dos vetores A e B é : " );

for (i = 0; i < vet4[i]; i++){
    
 System.out.print( vet4[i] + " , ");
 System.out.print( "" );
 
}
 
 System.out.println("");
 System.out.print(" O resultado da União dos vetores A e B é : " );

for (i = 0; i < 20 ; i++){
    
 System.out.print( vet3[i] + " , ");
 System.out.print("");
}

  }
}

1 Resposta

jc_caetano

Boa tarde tallys,

Abaixo o código com uma possível implementação da união de dois vetores.

public static void main(String []args)
      {
         int i, j = 0;
         int []vet1 = {1, 2, 3, 4, 5}; //1º vetor da união
         int []vet2 = {1, 3, 5, 7, 9}; //2º vetor da união
         int []vet3; //Vetor de resposta
         String uniao = "";
         boolean igual = true; //Variável para comparação
      	
      	//Concatena o conteúdo do vet1 em uma string
         for(i = 0; i < vet1.length; i++)
         {
            uniao += ""+vet1[i]; 
         }
      	
      	
      	//Apartir do vet1, realiza a pesquisa no vet2 dos elementos diferentes.
         while(j < vet2.length)
         {
            for(i = 0; i < vet1.length && igual; i++)
            {
               igual = (vet2[j] != vet1[i]);
            }
            if(igual) //Se o elemento não existir no vet1, então insere na string uniao
            {
               uniao += vet2[j];
            }//fim se
            j++;
            igual = true; //Volta true para a variável
         }//fim while
      
      	//Logo, os elementos da união de vet1 e vet2 estarão na string uniao
      	//Agora é só inserir esta string no arranjo vet3.
         vet3 = new int[uniao.length()];
			System.out.print("A união:");
			System.out.print("{ ");
         for(i = 0; i < vet3.length; i++)
         {
            vet3[i] = Integer.parseInt(""+uniao.charAt(i));
				System.out.print(vet3[i] + " "); 
         }//fim for
			System.out.print("}");

      }//fim main()
Criado 27 de maio de 2012
Ultima resposta 27 de mai. de 2012
Respostas 1
Participantes 2