Menu
CoddyTech

Matemáticas - Diferencia de Conjuntos

Parte de la sección Lógica y Flujo del Journey de Java de Coddy. Lección 31 de 59.

La diferencia entre dos conjuntos da como resultado un nuevo conjunto que contiene los elementos que están en el primer conjunto, pero no en el segundo. En Java, puedes lograrlo utilizando el método removeAll().

First, create two HashSets.
HashSet<Integer> set1 = new HashSet<>();
set1.add(1);
set1.add(2);
set1.add(3);
HashSet<Integer> set2 = new HashSet<>();
set2.add(2);
set2.add(3);
set2.add(4);

A continuación, crea un nuevo HashSet para la diferencia: comienza con todos los elementos de set1:

HashSet<Integer> differenceSet = new HashSet<>(set1);

Después, elimina todos los elementos que aparecen en set2:

differenceSet.removeAll(set2); // [1]
challenge icon

Desafío

Fácil

Crea un método llamado setDifference que reciba dos HashSets de enteros como entrada. El método debe calcular la diferencia (los elementos del primer conjunto que no están en el segundo) e imprimir el resultado con el formato:

Difference: [elements]

Pruébalo tú mismo

import java.util.HashSet;
import java.util.Scanner;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;

public class Main {
    public static void setDifference(HashSet<Integer> set1, HashSet<Integer> set2) {
        // Escribe tu código aquí
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        // Lee la cadena JSON que representa el primer conjunto (p. ej., [1,2,3])
        String set1String = scanner.nextLine();
        // Lee la cadena JSON que representa el segundo conjunto (p. ej., [2,3,4])
        String set2String = scanner.nextLine();

        Type setType = new TypeToken<HashSet<Integer>>(){}.getType();
        HashSet<Integer> set1 = new Gson().fromJson(set1String, setType);
        HashSet<Integer> set2 = new Gson().fromJson(set2String, setType);

        setDifference(set1, set2);
    }
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Lógica y Flujo

Practica por tu cuenta: Compilador de Java online