Menu
Coddy logo textTech

Vereinigung und Schnittmenge

Teil des Abschnitts Logik & Kontrollfluss der Swift-Journey von Coddy — Lektion 19 von 56.

Sets glänzen, wenn man Fragen zur Zugehörigkeit stellt, die zwei Sammlungen betreffen.

let a: Set = [1, 2, 3, 4]
let b: Set = [3, 4, 5, 6]

union gibt jedes Element von beiden Seiten zurück:

a.union(b)              // {1, 2, 3, 4, 5, 6}

intersection gibt nur die Elemente zurück, die in beiden vorkommen:

a.intersection(b)       // {3, 4}

Jede Methode gibt ein neues Set zurück. Die ursprünglichen Sets bleiben unverändert. Die Iterationsreihenfolge über das Ergebnis ist nicht garantiert, sortieren Sie vor der Ausgabe.

challenge icon

Aufgabe

Einfach

Lies zwei Zeilen Eingabe ein. Jede ist eine durch Kommas getrennte Liste von Ganzzahlen.

Behandle sie als Mengen a und b. Gib zwei Zeilen aus:

  1. Die Schnittmenge, aufsteigend sortiert, verbunden mit , (oder eine leere Zeile, wenn sie leer ist)
  2. Die Vereinigungsmenge, aufsteigend sortiert, verbunden mit ,

Für die Eingabe 1,2,3,4 in der ersten Zeile und 3,4,5,6 in der zweiten Zeile ist die Ausgabe:

3,4
1,2,3,4,5,6

Spickzettel

Mengenoperationen in Swift:

let a: Set = [1, 2, 3, 4]
let b: Set = [3, 4, 5, 6]

a.union(b)         // {1, 2, 3, 4, 5, 6} - Elemente aus einer der beiden Mengen
a.intersection(b)  // {3, 4} - Elemente in beiden Mengen

Beide Methoden geben ein neues Set zurück; die Originale bleiben unverändert. Sortieren Sie vor der Ausgabe, da die Iterationsreihenfolge nicht garantiert ist.

Probier es selbst

let a = Set(readLine()!.components(separatedBy: ",").map { Int($0)! })
let b = Set(readLine()!.components(separatedBy: ",").map { Int($0)! })

// TODO: Schnittmenge sortiert verbunden, Vereinigung sortiert verbunden
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Logik & Kontrollfluss