Zbiory — przynależność i operacje
Używajcie Swift Set do przechowywania unikatowych elementów, szybkiego sprawdzania przynależności, działań na zbiorach (union/intersection/subtracting/symmetricDifference) i relacji (subset/superset/disjoint).
Zbiory — przynależność i operacje to bezpłatna lekcja Swift Academy na CoddyKit. To lekcja 2 z 3. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Swift Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Swift Academy zawiera 3 lekcji w sumie.
Po co zbiory?
Cel: Opanuj typ Set do przechowywania unikatowych, nieuporządkowanych wartości i szybkiego sprawdzania przynależności. Nauczysz się używać algebry zbiorów i relacji do analizowania danych.
Tworzenie i contains
Twórz obiekt Set, dodawaj i usuwaj elementy oraz sprawdzaj contains; duplikaty są ignorowane.
var fruits: Set<String> = ["apple", "banana"]
fruits.insert("banana") // no duplicate added
fruits.insert("cherry")
fruits.remove("apple")
print("has banana?", fruits.contains("banana"))Algebra zbiorów
Używaj metod union, intersection, subtracting i symmetricDifference.
let evens: Set<Int> = [2,4,6,8]
let odds: Set<Int> = [1,3,5,7]
print("union", evens.union(odds).sorted())
print("intersect", evens.intersection([2,3,4,5]).sorted())
print("subtract", evens.subtracting([2,8]).sorted())
print("symDiff", evens.symmetricDifference([4,10]).sorted())Relacje
Relacje obejmują: isSubset, isSuperset i isDisjoint.
let a: Set<Int> = [1,2]
let b: Set<Int> = [1,2,3,4]
print("a ⊆ b?", a.isSubset(of: b))
print("b ⊇ a?", b.isSuperset(of: a))
print("disjoint?", a.isDisjoint(with: [3,4]))Iterowanie i sortowanie
Zbiory są nieuporządkowane; sortuj je, gdy potrzebujesz stałej kolejności, na przykład w wynikach interfejsu użytkownika.
let colors: Set<String> = ["red", "blue", "green"]
// Sets are unordered; sort for deterministic output
for c in colors.sorted() { print(c) }Wskazówki i wydajność
Wskazówki:
- Do sprawdzania przynależności preferuj Set — operacja często ma złożoność O(1).
- Elementy muszą być zgodne z Hashable (String, Int i wiele enumów działa od razu).
- Konwertuj do
Arraylub używajsorted(), gdy kolejność ma znaczenie.
Różnica symetryczna
Szybki test: Która metoda zwraca elementy należące do jednego ze zbiorów, ale nie do obu?
Podsumowanie
Podsumowanie: Zbiory przechowują unikatowe elementy i świetnie sprawdzają się przy sprawdzaniu przynależności. Ćwicz algebrę zbiorów (union/intersection/subtracting/symmetricDifference) oraz relacje (subset/superset/disjoint).
Często zadawane pytania
Czy lekcja „Zbiory — przynależność i operacje” jest bezpłatna?
Tak — pełny tekst „Zbiory — przynależność i operacje” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Swift Academy, przejdź na CoddyKit PRO. Kurs Swift Academy zawiera 3 lekcji w sumie.
Co nauczysz się w „Zbiory — przynależność i operacje”?
Używajcie Swift Set do przechowywania unikatowych elementów, szybkiego sprawdzania przynależności, działań na zbiorach (union/intersection/subtracting/symmetricDifference) i relacji (subset/superset/… Ćwiczysz Swift Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Swift Academy?
Nie wymagamy żadnego doświadczenia. Swift Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 3.
Ile czasu zajmuje lekcja „Zbiory — przynależność i operacje”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Swift Academy?
Tak. Każda lekcja Swift Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Tablice, słowniki i zbiory
- Zbiory — przynależność i operacje
- Wzorce iteracji i zmienność