Birleşim ve Kesişim
Coddy'nin Swift Journey'sinin Mantık ve Akış bölümünün bir parçası — ders 19 / 56.
İki koleksiyonu içeren üyelik soruları sorduğunuzda kümeler (sets) parlar.
let a: Set = [1, 2, 3, 4]
let b: Set = [3, 4, 5, 6]union her iki taraftaki tüm öğeleri döndürür:
a.union(b) // {1, 2, 3, 4, 5, 6}intersection yalnızca her ikisinde de bulunan öğeleri döndürür:
a.intersection(b) // {3, 4}Her metot yeni bir Set döndürür. Orijinal kümeler değişmeden kalır. Sonuç üzerindeki yineleme sırası garanti edilmez, yazdırmadan önce sıralayın.
Görev
Kolayİki satır girdi okuyun. Her biri virgülle ayrılmış tam sayılardan oluşan bir listedir.
Bunları a ve b kümeleri olarak ele alın. İki satır yazdırın:
- Artan düzende sıralanmış ve
,ile birleştirilmiş kesişim (boş olduğunda boş bir satır) - Artan düzende sıralanmış ve
,ile birleştirilmiş birleşim
İlk satırda 1,2,3,4 ve ikinci satırda 3,4,5,6 girdisi için çıktı şöyledir:
3,4
1,2,3,4,5,6Kopya kağıdı
Swift'te küme işlemleri:
let a: Set = [1, 2, 3, 4]
let b: Set = [3, 4, 5, 6]
a.union(b) // {1, 2, 3, 4, 5, 6} - her iki kümedeki elemanlar
a.intersection(b) // {3, 4} - her iki kümede de bulunan elemanlarHer iki yöntem de yeni bir Set döndürür; orijinaller değişmez. Yineleme sırası garanti edilmediğinden yazdırmadan önce sıralayın.
Kendin dene
let a = Set(readLine()!.components(separatedBy: ",").map { Int($0)! })
let b = Set(readLine()!.components(separatedBy: ",").map { Int($0)! })
// TODO: kesişim sıralanmış birleştirilmiş, birleşim sıralanmış birleştirilmiş
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Mantık ve Akış bölümündeki tüm dersler
1Stringler Derinlemesine
Sayma ve İndekslerBüyük-Küçük Harf ve KırpmaStringlerde AramaBölme ve BirleştirmeAlt Stringleri DeğiştirmeÖzet - Kullanıcı Adı Kontrolü4Kümeler
Küme OluşturmaBirleşim ve KesişimFark ve Simetrik FarkAlt Küme ve Üst KümeÖzet - Etiket Filtresi7Proje - Alışkanlık Takibi
Projeye Genel BakışTamamlandı Olarak İşaretle10Proje - Quiz Motoru
Projeye Genel BakışSoruları Sorma2Aralıklar ve Adımlar
Kapalı ve Yarı AçıkStride (Adım)Aralık MetotlarıSwitch İçinde AralıklarÖzet - Takvim Izgarası5Yüksek Mertebeden Fonksiyonlar Bölüm 1
MapFilterReduceMap, filter, reduce zincirlemeÖzet - Kelime İstatistikleri