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: trueBenzer şekilde, setB setA'nın bir üst kümesidir çünkü setA'nın her elemanını içerir.
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:
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>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: trueEğ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);
}
}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
1Çok Boyutlu Diziler
2D Diziler Temelleri2D Dizi Elemanlarına Erişim2D Dizilerle İç İçe DöngülerÖzet - 2D DizilerMatris Toplama ve ÇıkarmaJagged Diziler3D Diziler ve ÖtesiYaygın 2D Dizi DesenleriÖzet - Diziler Hakkında Her Şey2HashMap Bölüm 1
HashMap Nedir?HashMap TanımlamaDeğerlere ErişimAnahtarın Varlığını Kontrol EtmeSözlükleri DeğiştirmeÖzet - HashMap5HashSet Kısım 2
Matematik - HashSet'lerin BirliğiMatematik - HashSet KesişimiMatematik - Küme FarkıMatematik - Simetrik FarkAlt Kümeler ve Üst KümelerKümeler Üzerinde Yineleme3HashMap Bölüm 2
HashMap YöntemlerikeySet() ile YinelemeentrySet() ile Yinelemeİç İçe HashMapÖzet - Depo YönetimiÖzet - HashMap İşlemleri6İleri Akış Kontrolü
Etiketli İfadelerSwitch İfadesiDesen EşleştirmeKoruyucu Yan CümlelerÖzet - Akış Kontrolü9Proje - Benzersiz Kelime Sayacı
Metin Girişi ve DepolamaKelime İşleme