Menu
Coddy logo textTech

수학 - 집합 차집합

Coddy Java 여정의 논리와 흐름 섹션에 포함된 레슨 — 59개 중 31번째.

두 집합 간의 차집합은 첫 번째 집합에 있지만 두 번째 집합에는 없는 요소를 포함하는 새로운 집합을 생성합니다. Java에서는 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);

다음으로, 차집합을 위한 새로운 HashSet을 생성하세요 - set1의 모든 요소로 시작하세요:

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

그 다음, <strong>set2</strong>에 나타나는 모든 요소를 제거하세요:

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

챌린지

쉬움

입력으로 두 개의 정수 HashSet을 받는 <strong>setDifference</strong>라는 이름의 메서드를 생성하세요. 이 메서드는 차집합(첫 번째 집합에 있지만 두 번째 집합에는 없는 요소들)을 계산하고 결과를 다음 형식으로 출력해야 합니다:

Difference: [elements]

치트 시트

두 집합 간의 차집합은 첫 번째 집합에 있지만 두 번째 집합에는 없는 요소들을 포함하는 새로운 집합을 생성합니다. removeAll() 메서드를 사용하세요:

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);

// Create difference set starting with all elements from set1
HashSet<Integer> differenceSet = new HashSet<>(set1);

// Remove all elements that appear in set2
differenceSet.removeAll(set2); // [1]

직접 해보기

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) {
        // 여기에 코드를 작성하세요
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        // 첫 번째 집합을 나타내는 JSON 문자열 읽기 (예: [1,2,3])
        String set1String = scanner.nextLine();
        // 두 번째 집합을 나타내는 JSON 문자열 읽기 (예: [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 icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

논리와 흐름의 모든 레슨