Lecture 10 Flashcards

(17 cards)

1
Q

Warum kann QuickSort quadratische Laufzeit haben?

A

Wenn das Pivot in jeder Rekursion immer das kleinste / größte Element ist ⇒ extrem unbalancierte Teilprobleme.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Drei in der Vorlesung genannte Strategien, um diesen Worst Case zu vermeiden?

A

1) Zufälliges Pivot ⇒ O(n log n) w.h.p.; (2) Median als Pivot (Selektions-Algo); (3) Wechsel auf anderes O(n log n)-Sortier­verfahren, falls Rekursions­tiefe > log n.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Wie viele Vergleiche macht QuickSort mit zufälligem Pivot erwartet?

A

C̄(n) ≤ 2 n ln n.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Kernidee des Beweises für diese Schranke bei qs?

A

Jedes Element­paar wird höchstens ein einziges Mal verglichen, nämlich wenn eines der beiden als Pivot gewählt wird.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Definition der Zufalls­variable Xᵢⱼ im Beweis?

A

Xᵢⱼ = 1, falls die sortierten Elemente e′ᵢ und e′ⱼ direkt verglichen werden, sonst 0.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Wahrscheinlichkeit Pr[Xᵢⱼ = 1]?

A

2 / (j − i + 1).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Kurze Beschreibung des MergeSort-Prinzips?

A

Rekursives Halbieren der Sequenz, sortiere beide Hälften, verschmelze in O(n) zum Ergebnis.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Pseudocode-Kern: Welche drei Zeiger nutzt das Merge?

A

j (linker Block), k (rechter Block), i (Position im Buffer b[ ])

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Allgemeines Schema eines Divide-&-Conquer-Algor. (Parameter d, b)?

A

Teile in d Probleme Größe n/b, löse rekursiv, füge in O(c n) Kosten zusammen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Master-Theorem (vereinfachte Version): drei Fälle?

A

d < b → Θ(n); d = b → Θ(n log n); d > b → Θ(n^{log_b d}).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Intuition hinter Fall d < b?

A

Kosten sinken je Rekursions­level ⇒ erste Ebene dominiert ⇒ Θ(n).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Intuition hinter Fall d = b?

A

Jede Ebene kostet gleich viel ⇒ log_b n Ebenen ⇒ Θ(n log n).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Intuition hinter Fall d > b?

A

Kosten steigen je Ebene ⇒ letzte Ebene dominiert ⇒ Θ(n^{log_b d}).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Rolle der geometrischen Reihe bei der Herleitung?

A

Summiert Ebene-für-Ebene-Kosten cn (d/b)^i; Vergleich zu 1/(1 − d/b) zeigt Konvergenz oder Divergenz.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Wie viele Teil­probleme und welche Größe in Ebene i?

A

d^i Probleme, Größe n/b^i.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Praktische Konsequenz der Lower-Bound-Analyse?

A

Will man < O(n log n) erreichen, muss man nicht vergleichs­basiert sortieren (z.B. Counting-/Radix-Sort).

17
Q

Warum erhält QuickSort trotz gleicher O(n log n) in der Praxis oft den Vorrang gegenüber MergeSort?

A

In-place-Partition (kein O(n) Extra-Speicher) und bessere Cache-/Konstanten.