Matematyka – różnica symetryczna
Część sekcji Logika i przepływ programu ścieżki JavaScript w Coddy. Lekcja 39 z 65.
Różnica symetryczna dwóch zbiorów A i B to nowy zbiór zawierający elementy należące do A lub B, ale nie do obu jednocześnie. Można ją rozumieć jako sumę zbiorów A - B i B - A.
Na przykład:
const set1 = new Set(arr1);
const set2 = new Set(arr2);
// Utwórz różnicę symetryczną
const symmetricDiff = new Set([
...set1.difference(set2),
...set2.difference(set1)
]);
// Przekształć z powrotem w tablicę
const result = Array.from(symmetricDiff);Wyzwanie
ŁatwyUtwórz funkcję o nazwie efficientSymmetricDifference, która przyjmuje dwie tablice jako parametry: arr1 i arr2. Funkcja powinna przekształcić tablice w zbiory. Utwórz nowy obiekt Set będący różnicą symetryczną dwóch wejściowych zbiorów, przekształć go w tablicę i zwróć tę tablicę.
Spróbuj swoich sił
function efficientSymmetricDifference(arr1, arr2) {
const set1 = new Set(arr1)
const set2 = new Set(arr2)
const symDiff = new Set();
// Napisz tutaj swój kod
return Array.from(symDiff);
}
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Logika i przepływ programu
1Napisy w praktyce
Podstawy napisówIterowanie po napisachLiterały szablonoweMetody napisówPodsumowanie – mistrz napisów4JSON, część 2
Iterowanie po JSONZagnieżdżony JSONOpcjonalne łańcuchowanie w JSONPłytka i głęboka kopiaPowtórka — sklep rowerowyPowtórka — Układ Słoneczny7System zarządzania biblioteką
Omówienie projektuDodawanie książek10Zarządzanie systemem festiwalowym
Przegląd projektuDodawanie filmów i miejsc2Tablice wielowymiarowe
Podstawy tablic 2DDostęp do elementów tablic 2DZagnieżdżone pętle z tablicami 2DPowtórka — tablice 2DDodawanie i odejmowanie macierzyTablice nieregularneTablice 3D i większeTypowe wzorce tablic 2DPowtórka — wszystko o tablicach5Zbiory — część 1
Czym jest zbiór?Iterowanie po zbiorachDodawanie elementuUsuwanie elementuSprawdzanie, czy element istniejeRozmiar i sprawdzanie, czy zbiór jest pustyKopiowanie i czyszczeniePodsumowanie — podstawy zbiorów8Ciekawe zagadnienia dotyczące tablic
Destrukturyzacja tablicSkładnia spread w tablicachRzadkie tablicePodsumowanie – warsztaty z tablic3JSON część 1
Czym jest JSON?Sprawdzanie, czy klucz istniejeMetody obiektówOperator spread — część 1Operator spread — część 2Usuwanie kluczyPodsumowanie — manipulowanie kluczami w JSON6Zbiory, część 2
Matematyka – suma zbiorówMatematyka – część wspólna zbiorówMatematyka – różnica zbiorówMatematyka – różnica symetrycznaPodzbiory i nadzbioryPowtórka – grupowanie znajomychPoćwicz samodzielnie: Kompilator JavaScript online