Menu
Coddy logo textTech

Alt Kümeler ve Üst Kümeler

Coddy'nin Java Journey'sinin Mantık & Akış bölümünün bir parçası — ders 33 / 59.

Bir alt küme, her elemanı başka bir kümede de bulunan bir kümedir. Bir üst küme, başka bir kümenin tüm elemanlarını içeren bir kümedir.

İlk olarak, iki HashSet oluşturun:

HashSet<String> setA = new HashSet<>();
setA.add("apple");
setA.add("banana");
HashSet<String> setB = new HashSet<>();
setB.add("apple");
setB.add("banana");
setB.add("cherry");

containsAll() metodunu kullanın:

boolean isSubset = setB.containsAll(setA);
System.out.println("setA is a subset of setB: " + isSubset);
// Output: setA is a subset of setB: true

Benzer şekilde, setB setA'nın bir üst kümesidir çünkü setA'nın her elemanını içerir.

challenge icon

Görev

Kolay

<strong>checkSubsetSuperset</strong> isimli, iki String HashSet'i giriş olarak alan bir metod oluşturun:

  • setA ve setB

Metod şunları yapmalıdır:

  1. setA'nın setB'nin bir alt kümesi olup olmadığını containsAll() kullanarak kontrol edin ve şunu yazdırın:

    setA is a subset of setB: <true/false>
  2. setB'nin setA'nın bir üst kümesi olup olmadığını kontrol edin (bu aynı kontroldür) ve şunu yazdırın:

    setB is a superset of setA: <true/false>

Kopya kağıdı

Bir alt küme, her elemanı başka bir kümede de bulunan bir kümedir. Bir üst küme, başka bir kümenin tüm elemanlarını içeren bir kümedir.

Bir kümenin diğerinin alt kümesi olup olmadığını kontrol etmek için containsAll() metodunu kullanın:

HashSet<String> setA = new HashSet<>();
setA.add("apple");
setA.add("banana");

HashSet<String> setB = new HashSet<>();
setB.add("apple");
setB.add("banana");
setB.add("cherry");

boolean isSubset = setB.containsAll(setA);
System.out.println("setA is a subset of setB: " + isSubset);
// Çıktı: setA, setB'nin alt kümesidir: true

Eğer setA, setB'nin alt kümesi ise, o zaman setB, setA'nın üst kümesidir.

Kendin dene

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 checkSubsetSuperset(HashSet<String> setA, HashSet<String> setB) {
        // Kodunuzu buraya yazın
    }
    
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        // setA için JSON dizesini oku (ör. ["apple","banana"])
        String setAString = scanner.nextLine();
        // setB için JSON dizesini oku (ör. ["apple","banana","cherry"])
        String setBString = scanner.nextLine();
        
        Type setType = new TypeToken<HashSet<String>>(){}.getType();
        HashSet<String> setA = new Gson().fromJson(setAString, setType);
        HashSet<String> setB = new Gson().fromJson(setBString, setType);
        
        checkSubsetSuperset(setA, setB);
    }
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Mantık & Akış bölümündeki tüm dersler