Anki Deck Changes

Commit: 0c937afb - fix the 12k cards about matching runtimes

Author: obrhubr <obrhubr+noreply@noreply.com>

Date: 2026-04-01T11:41:01+02:00

Changes: 7 note(s) changed (0 added, 7 modified, 0 deleted)

ℹ️ Cosmetic Changes Hidden: 1 note(s) had formatting-only changes and are not shown below

Note 1: ETH::2. Semester::A&W

Deck: ETH::2. Semester::A&W
Note Type: Horvath Classic
GUID: N{,q$aNY7]
modified

Before

Front

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings ETH::2._Semester::A&W::Minitests::2
Wahr oder falsch?

Jeder Graph ohne Dreieck hat eine chromatische Zahl von höchstens 100.

Back

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings ETH::2._Semester::A&W::Minitests::2
Wahr oder falsch?

Jeder Graph ohne Dreieck hat eine chromatische Zahl von höchstens 100.

Falsch

After

Front

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings ETH::2._Semester::A&W::Minitests::2
Wahr oder falsch?

Jeder Graph ohne Dreieck hat eine chromatische Zahl von höchstens 100.

Back

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings ETH::2._Semester::A&W::Minitests::2
Wahr oder falsch?

Jeder Graph ohne Dreieck hat eine chromatische Zahl von höchstens 100.

Falsch

Siehe Mycielski-Konstruktion.

Konstruktion:

Aus \(G_k = (V_k, E_k)\) mit \(V_k = \{v_1,\ldots,v_n\}\) bilde \(G_{k+1}\):
Füge Knoten \(w_1,\ldots,w_n, z\) hinzu. \(w_i\) ist mit allen Nachbarn von \(v_i\) verbunden (aber nicht mit \(v_i\) selbst). \(z\) ist mit allen \(w_i\) verbunden.
Der neue Graph ist dreiecksfrei und braucht eine Farbe mehr als \(G_k\).
Field-by-field Comparison
Field Before After
Back Falsch Falsch<br><br>Siehe Mycielski-Konstruktion.<b><br><br>Konstruktion:</b><br>Aus&nbsp;\(G_k = (V_k, E_k)\)&nbsp;mit&nbsp;\(V_k = \{v_1,\ldots,v_n\}\)&nbsp;bilde&nbsp;\(G_{k+1}\):<br>Füge Knoten&nbsp;\(w_1,\ldots,w_n, z\)&nbsp;hinzu.&nbsp;\(w_i\)&nbsp;ist mit allen Nachbarn von&nbsp;\(v_i\)&nbsp;verbunden (aber nicht mit&nbsp;\(v_i\)&nbsp;selbst).&nbsp;\(z\)&nbsp;ist mit allen&nbsp;\(w_i\)&nbsp;verbunden.<br>Der neue Graph ist dreiecksfrei und braucht eine Farbe mehr als&nbsp;\(G_k\).
Tags: ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings ETH::2._Semester::A&W::Minitests::2

Note 2: ETH::2. Semester::A&W

Deck: ETH::2. Semester::A&W
Note Type: Horvath Classic
GUID: cQtd|[>DYL
modified

Before

Front

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings ETH::2._Semester::A&W::Minitests::2
Wahr oder falsch?

Jeder \(k\)-reguläre bipartite Graph \(G = (A \cup B, E)\) für \(k \geq 1\) hat ein Matching der Größe \(|A|\).

Back

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings ETH::2._Semester::A&W::Minitests::2
Wahr oder falsch?

Jeder \(k\)-reguläre bipartite Graph \(G = (A \cup B, E)\) für \(k \geq 1\) hat ein Matching der Größe \(|A|\).

Wahr

After

Front

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings ETH::2._Semester::A&W::Minitests::2
Wahr oder falsch?

Jeder \(k\)-reguläre bipartite Graph \(G = (A \cup B, E)\) für \(k \geq 1\) hat ein Matching der Größe \(|A|\).

Back

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings ETH::2._Semester::A&W::Minitests::2
Wahr oder falsch?

Jeder \(k\)-reguläre bipartite Graph \(G = (A \cup B, E)\) für \(k \geq 1\) hat ein Matching der Größe \(|A|\).

Wahr

Hall-Satz: Da \(G\) \(k\)-regulär ist, hat jeder Knoten in \(X\) Grad \(k\), jeder in \(N(X)\) Grad \(\leq k\). Weil in bipartiten Graphen die Gradsumme links gleich der Gradsumme rechts ist, folgt \(|N(X)| \geq |X|\). Damit ist Halls Bedingung erfüllt und ein Matching der Größe \(|A|\) existiert.

Es gilt sogar: \(E\) lässt sich in \(k\) disjunkte perfekte Matchings partitionieren (iteratives Entfernen eines perfekten Matchings liefert jeweils einen \((k-1)\)-regulären Graphen).
Field-by-field Comparison
Field Before After
Back Wahr Wahr<br><br><b>Hall-Satz</b>: Da \(G\) \(k\)-regulär ist, hat jeder Knoten in \(X\) Grad \(k\), jeder in \(N(X)\) Grad \(\leq k\). Weil in bipartiten Graphen die Gradsumme links gleich der Gradsumme rechts ist, folgt \(|N(X)| \geq |X|\). Damit ist Halls Bedingung erfüllt und ein Matching der Größe \(|A|\) existiert. <br><br>Es gilt sogar:&nbsp;\(E\) lässt sich in \(k\) disjunkte perfekte Matchings partitionieren (iteratives Entfernen eines perfekten Matchings liefert jeweils einen \((k-1)\)-regulären Graphen).
Tags: ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings ETH::2._Semester::A&W::Minitests::2

Note 3: ETH::2. Semester::A&W

Deck: ETH::2. Semester::A&W
Note Type: Horvath Cloze
GUID: r>Tf(u(!Au
modified

Before

Front

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::2._Der_Satz_von_Hall
In \( k \)-regulären bipartiten Graphen kann man in Zeit \( O(|E|) \) ein perfektes Matching bestimmen.

Back

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::2._Der_Satz_von_Hall
In \( k \)-regulären bipartiten Graphen kann man in Zeit \( O(|E|) \) ein perfektes Matching bestimmen.

After

Front

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::2._Der_Satz_von_Hall
In \( k \)-regulären bipartiten Graphen kann man in Zeit \( O(|E|) \) ein perfektes Matching bestimmen.

Back

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::2._Der_Satz_von_Hall
In \( k \)-regulären bipartiten Graphen kann man in Zeit \( O(|E|) \) ein perfektes Matching bestimmen.

Perfektes Matching in \(k\)-regulären bipartiten Graphen
Das Skript erwähnt, dass es einen Algorithmus gibt, der in Zeit \(O(|E|)\) ein perfektes Matching in \(k\)-regulären bipartiten Graphen findet, sagt aber explizit: „Der allgemeine Fall ist deutlich schwieriger."
Bewiesen wird im Skript nur der Spezialfall \(k = 2^k\) (Satz 1.54).
Field-by-field Comparison
Field Before After
Extra <b>Perfektes Matching in </b>\(k\)<b>-regulären bipartiten Graphen</b><br>Das Skript erwähnt, dass es einen Algorithmus gibt, der in Zeit \(O(|E|)\) ein perfektes Matching in \(k\)-regulären bipartiten Graphen findet, sagt aber explizit: „Der allgemeine Fall ist deutlich schwieriger."<br>Bewiesen wird im Skript nur der Spezialfall \(k = 2^k\) (Satz 1.54).
Tags: ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::2._Der_Satz_von_Hall

Note 4: ETH::2. Semester::A&W

Deck: ETH::2. Semester::A&W
Note Type: Horvath Cloze
GUID: ri^3U#yh0U
modified

Before

Front

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::1._Algorithmen
In bipartiten Graphen kann man in Zeit \( O(|V| \cdot |E|) \) ein perfektes Matching bestimmen.

Back

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::1._Algorithmen
In bipartiten Graphen kann man in Zeit \( O(|V| \cdot |E|) \) ein perfektes Matching bestimmen.

After

Front

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::1._Algorithmen
In bipartiten Graphen kann man in Zeit \( O(|V| \cdot |E|) \) ein perfektes Matching bestimmen. Ist dies optimal?

Back

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::1._Algorithmen
In bipartiten Graphen kann man in Zeit \( O(|V| \cdot |E|) \) ein perfektes Matching bestimmen. Ist dies optimal?

Note, es geht mit Hopcroft-Karp in \(O(\sqrt{|V|} \cdot |E|)\) schneller.

Augmentierende-Pfade-Algorithmus
  • Man startet mit einem beliebigen Matching und sucht iterativ \(M\)-augmentierende Pfade
  • Diese baut schichtweise einen Layer-Graphen auf: \(L_0\) sind die unüberdeckten Knoten in \(A\), ungerade Schichten erreicht man über Kanten in \(E \setminus M\), gerade über Kanten in \(M\). Findet man einen unüberdeckten Knoten in \(B\), liefert Backtracking einen augmentierenden Pfad, entlang dessen man augmentiert (\(M := M \oplus P\)). 
Jede Suche kostet \(O(|V| + |E|)\), und man augmentiert höchstens \(|V|/2\) Mal, was \(O(|V| \cdot |E|)\) ergibt.
Field-by-field Comparison
Field Before After
Text In bipartiten Graphen kann man in Zeit \( O({{c1::|V| \cdot |E|}}) \) ein perfektes Matching bestimmen. In bipartiten Graphen kann man in Zeit \( O({{c1::|V| \cdot |E|}}) \) ein perfektes Matching bestimmen. Ist dies optimal?
Extra <i>Note, es geht mit Hopcroft-Karp in&nbsp;</i>\(O(\sqrt{|V|} \cdot |E|)\)&nbsp;<i>schneller.</i><br><br><b>Augmentierende-Pfade-Algorithmus</b><br><ul><li>Man startet mit einem beliebigen Matching und sucht iterativ \(M\)-augmentierende Pfade</li><li>Diese baut schichtweise einen Layer-Graphen auf: \(L_0\) sind die unüberdeckten Knoten in \(A\), ungerade Schichten erreicht man über Kanten in \(E \setminus M\), gerade über Kanten in \(M\). Findet man einen unüberdeckten Knoten in \(B\), liefert Backtracking einen augmentierenden Pfad, entlang dessen man augmentiert (\(M := M \oplus P\)).&nbsp;</li></ul>Jede Suche kostet \(O(|V| + |E|)\), und man augmentiert höchstens \(|V|/2\) Mal, was \(O(|V| \cdot |E|)\) ergibt.
Tags: ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::1._Algorithmen

Note 5: ETH::2. Semester::A&W

Deck: ETH::2. Semester::A&W
Note Type: Horvath Cloze
GUID: yQa5-0YeQw
modified

Before

Front

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::1._Algorithmen
Für \(n\) gerade und \(\ell : \binom{[n]}{2} \to \mathbb{N}_0\) kann man in Zeit \(O(n^3)\) ein minimales (gewichtsminimales) perfektes Matching in \(K_n\) finden.

Back

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::1._Algorithmen
Für \(n\) gerade und \(\ell : \binom{[n]}{2} \to \mathbb{N}_0\) kann man in Zeit \(O(n^3)\) ein minimales (gewichtsminimales) perfektes Matching in \(K_n\) finden.

Dies wird im Christofides-Algorithmus für das metrische TSP benötigt.

After

Front

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::1._Algorithmen
{{c3::Für \(n\) gerade und \(\ell : \binom{[n]}{2} \to \mathbb{N}_0\) kann man in Zeit \(O(n^3)\) ein minimales (gewichtsminimales) perfektes Matching in \(K_n\) finden.}}

Back

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::1._Algorithmen
{{c3::Für \(n\) gerade und \(\ell : \binom{[n]}{2} \to \mathbb{N}_0\) kann man in Zeit \(O(n^3)\) ein minimales (gewichtsminimales) perfektes Matching in \(K_n\) finden.}}

Das ist der Blossom-Algorithmus.

Dies wird im Christofides-Algorithmus für das metrische TSP benötigt.
Field-by-field Comparison
Field Before After
Text Für \(n\) gerade und \(\ell : \binom{[n]}{2} \to \mathbb{N}_0\) kann man in Zeit&nbsp;\(O({{c1::n^3}})\) ein {{c2::minimales (gewichtsminimales) <b>perfektes</b> Matching}} in \(K_n\) finden. {{c3::Für \(n\) gerade und \(\ell : \binom{[n]}{2} \to \mathbb{N}_0\) kann man in Zeit&nbsp;\(O({{c1::n^3}})\) ein {{c2::minimales (gewichtsminimales) <b>perfektes</b> Matching}} in \(K_n\) finden.}}
Extra Dies wird im Christofides-Algorithmus für das metrische TSP benötigt. Das ist der&nbsp;<b>Blossom-Algorithmus</b>.<br><br>Dies wird im Christofides-Algorithmus für das metrische TSP benötigt.
Tags: ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::1._Algorithmen

Note 6: ETH::2. Semester::A&W

Deck: ETH::2. Semester::A&W
Note Type: Horvath Cloze
GUID: z:DWoLKD{}
modified

Before

Front

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::2._Der_Satz_von_Hall
In \( 2^k \)-regulären bipartiten Graphen kann man in Zeit \( O(|E|) \) ein perfektes Matching bestimmen.

Back

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::2._Der_Satz_von_Hall
In \( 2^k \)-regulären bipartiten Graphen kann man in Zeit \( O(|E|) \) ein perfektes Matching bestimmen.

After

Front

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::2._Der_Satz_von_Hall
In \( 2^k \)-regulären bipartiten Graphen kann man in Zeit \( O(|E|) \) ein perfektes Matching bestimmen.

Back

ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::2._Der_Satz_von_Hall
In \( 2^k \)-regulären bipartiten Graphen kann man in Zeit \( O(|E|) \) ein perfektes Matching bestimmen.

Satz 1.54 - Eulertour-basierter Algorithmus
  • \(2^k\)-regulärer bipartiter Graph ist eulersch (alle Knoten haben geraden Grad).
  • In jeder Zusammenhangskomponente berechnet man eine Eulertour in \(O(|E|)\)
  • Dann läuft man diese ab und entfernt jede zweite Kante. 
  • Der verbleibende Graph ist \(2^{k-1}\)-regulär. Nach \(k\) Iterationen ist der Graph \(2^0 = 1\)-regulär, also selbst ein perfektes Matching. 
Die Gesamtlaufzeit ist \[\sum_{i=1}^{k} O\!\left(\frac{|E|}{2^{i-1}}\right) = O(|E|)\] weil sich die Kantenzahl in jeder Iteration halbiert (geometrische Reihe).
Field-by-field Comparison
Field Before After
Extra <b>Satz 1.54 - Eulertour-basierter Algorithmus</b><br><ul><li>\(2^k\)-regulärer bipartiter Graph ist <b>eulersch</b> (alle Knoten haben geraden Grad).</li><li>In jeder Zusammenhangskomponente berechnet man eine <b>Eulertour</b> in&nbsp;\(O(|E|)\)</li><li>Dann läuft man diese ab und entfernt <b>jede zweite</b> Kante.&nbsp;</li><li>Der verbleibende Graph ist \(2^{k-1}\)-regulär. Nach \(k\) Iterationen ist der Graph \(2^0 = 1\)-regulär, also selbst ein perfektes Matching.&nbsp;</li></ul>Die Gesamtlaufzeit ist \[\sum_{i=1}^{k} O\!\left(\frac{|E|}{2^{i-1}}\right) = O(|E|)\] weil sich die Kantenzahl in jeder Iteration halbiert (geometrische Reihe).
Tags: ETH::2._Semester::A&W::1._Graphentheorie::6._Matchings::2._Der_Satz_von_Hall
↑ Top