martes, 24 de noviembre de 2015

Java:Unión, Intersección y Diferencia entre conjuntos

Dados dos conjuntos de tipo <Coordenada>, es decir (x,y,z) se pide realizar la unión, intersección y diferencia entre ellos utilizando LinkedList. Posteriormente presentar los resultados

Primeramente, creamos la clase Conjunto, la cual contendrá un método por cada operacion de la siguiente manera:

 Empezaremos con el código fuente de la UNION entre conjuntos, el cual recibe como parámetros 2 conjuntos de tipo <Coordenada>.

  • Utilizamos los iteradores i, j para recorrer ambos conjuntos y creamos una lista vacía llamada listaUnion.
  • Nos ubicamos en los elementos de "conjunto1" , preguntamos si listaUnion no contiene dicho elemento, de ser así, lo agregamos a la lista e ingresamos al "conjunto2".
  • Una vez dentro del lazo While en "conjunto2" cuestionamos si el elemento del conjunto1 es diferente al elemento del conjunto2, si cumple con la condición, agregamos el elemento2 a la lista.
  • Finalmente retornamos la lista listaUnion




Para el método INTERSECCION también recibimos dos listas enlazadas llamadas conjunto1 y 2.

  • Utilizamos los iteradores i, j para recorrer ambos conjuntos y creamos una lista vacía llamada listaIntersección. 
  • Iniciamos ubicandonos en el primer elemento del conjunto1  para recorrerlo con un while y dentro de  el, con otro while recorremos el conjunto2.
  • Si cumple con la condición de que ambos elementos sean iguales, se agregará el elemento1 o 2 a la lista listaInterseccion.
  • Finalmente retornamos listaInterseccion.


En el método DIFERENCIA, también recibimos como parámetros las dos linkedList llamadas conjunto1 y 2 respectivamente. Tener en cuenta que la diferencia de conjuntos corresponde a los elementos que están en el primer conjunto pero que no están en el conjunto2.


  • Se usa un solo iterador para recorrer el conjunto1, dentro del cual se establece la condición de que el conjunto2 no contenga al elemento del conjunto1, de cumplir, se agrega el elemento a la lista listaDiferencia.





Para el método Imprimir, recibimos una lista, la cual recorremos mediante un for, y por cada iteración imprimimos un elemento.



Finalmente el programa principal, implementado los métodos creados nos quedaría de la siguiente manera:

Para probarlo, creamos los conjuntos 1 y 2 y lo agregamos dentro de la clase Programa, pero fuera del main.






1 comentario:

  1. en la parte del import porque se pone java? al momento de pasar el codigo sale error

    ResponderEliminar