Matematika: Beda Simetris
Termasuk bagian Logika & Alur dalam perjalanan Java di Coddy. Pelajaran 32 dari 59.
Selisih simetris dari dua set adalah set baru yang berisi elemen yang ada di salah satu set, tetapi tidak di keduanya. Di Java, kamu dapat menghitungnya dengan:
- Mencari selisih set pertama terhadap set kedua.
- Mencari selisih set kedua terhadap set pertama.
- Menggabungkan kedua perbedaan ini.
Pertama, buat dua HashSet:
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);Selanjutnya, hitung setiap selisih satu arah:
HashSet<Integer> diff1 = new HashSet<>(set1);
diff1.removeAll(set2); // diff1 berisi [1]
HashSet<Integer> diff2 = new HashSet<>(set2);
diff2.removeAll(set1); // diff2 berisi [4]Selanjutnya, gabungkan kedua selisih tersebut:
diff1.addAll(diff2); // diff1 berisi [1, 4]Tantangan
MudahBuat method bernama symmetricDifference yang menerima dua HashSet berisi bilangan bulat sebagai input, menghitung selisih simetrisnya, lalu mencetaknya dengan format:
Symmetric Difference: [elements]Coba sendiri
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 symmetricDifference(HashSet<Integer> set1, HashSet<Integer> set2) {
// Tulis kodemu di sini
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// Baca string JSON untuk set pertama (misalnya, [1,2,3])
String set1String = scanner.nextLine();
// Baca string JSON untuk set kedua (misalnya, [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);
symmetricDifference(set1, set2);
}
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Logika & Alur
1Array Multidimensi
Dasar Array 2DMengakses Elemen Array 2DLoop Bersarang dengan Array 2DRangkuman: Array 2DPenjumlahan dan Pengurangan MatriksArray BergerigiArray 3D dan Lebih JauhPola Umum Array 2DRangkuman: Semua tentang Array2HashMap Bagian 1
Apa itu HashMap?Deklarasikan HashMapMengakses nilaiPeriksa apakah key adaMengubah dictionaryRingkasan: HashMap5HashSet Bagian 2
Matematika: Gabungan HashSetMatematika: Irisan HashSetMatematika: Selisih HimpunanMatematika: Beda SimetrisHimpunan Bagian dan SuperhimpunanMelakukan Iterasi pada set3HashMap Bagian 2
Method HashMapIterasi dengan keySet()Iterasi dengan entrySet()HashMap BersarangRangkuman: Kelola GudangRangkuman: Operasi HashMap6Alur Kontrol Lanjutan
Pernyataan LabelEkspresi SwitchPencocokan PolaKlausa PenjagaRingkasan Alur Kontrol9Proyek: Penghitung Kata Unik
Input dan Penyimpanan TeksPemrosesan KataLatihan sendiri: Compiler Java online