• Keine Ergebnisse gefunden

5. Eine untere Schranke f¨ ur die Medianbestimmung

N/A
N/A
Protected

Academic year: 2021

Aktie "5. Eine untere Schranke f¨ ur die Medianbestimmung"

Copied!
18
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

5. Eine untere Schranke f¨ ur die Medianbestimmung

Satz 88

Jeder (vergleichsbasierte) Medianalgorithmus ben¨ otigt im worst-case mindestens 3n

2

− 2 Vergleiche.

Beweis:

Gegenspielerargument (adversary argument)

n Elemente, o.B.d.A. n ungerade, alle Elemente paarweise

verschieden. Die Menge aller Elemente wird in drei Teilmengen

partitioniert: U enth¨ alt die Kandidaten f¨ ur den Median, G enth¨ alt

Elemente, die sicher gr¨ oßer als der Median sind, und L enth¨ alt

Elemente, die sicher kleiner als der Median sind. Anfangs sind alle

Elemente in U .

(2)

Beweis (Forts.):

Der Algorithmus stellt nun Fragen der Form a i < a j . Der Gegenspieler gibt konsistente Antworten, die den Algorithmus jedoch dazu zwingen, m¨ oglichst viele Fragen stellen zu m¨ ussen, bevor die Antwort feststehen kann(d.h. U soll m¨ oglichst ungeordnet bleiben).

Durch die (konsistenten!) Antworten des Gegenspielers auf die

“ < ? “-Queries des Algorithmus entsteht ein DAG. Der Gegenspieler h¨ alt diesen DAG “einfach“, z.B. angenommen y > z und y > x, dann soll y

” sehr groß“ sein ⇒ y → G.

(3)

Strategie des Gegenspielers

Beweis (Forts.):

L U G

a

1

• • • • • a

n

a i < a j

• •

s s a i

a j

(4)

Strategie des Gegenspielers

Beweis (Forts.):

L U G

• • • • • • s

s

@ s

@

b % G

(5)

Strategie des Gegenspielers

Beweis (Forts.):

L U G

• • • • • • s

s s Solange ein Element unverglichen ist, ist nicht klar, welches der Median ist.

≤ n + 1 2 − 1

≤ n + 1

2 − 1

(6)

Beweis (Forts.):

Solange |L|, |G| < n+1 2 , kann der Algorithmus annehmen, dass der Median in U ist. Solange U mindestens zwei unverglichene

Elemente und keine Zusammenhangskomponente mit > 2

Elementen enth¨ alt, kann der Algorithmus den Median nicht

bestimmen.

(7)

Strategie des Gegenspielers

Beweis (Forts.):

Die Strategie des Gegenspielers hat zwei Phasen.

Erste Phase: Query sei x < y: ?

i) x, y ∈ G bzw. x, y ∈ L: irgendeine konsistente Antwort ii) x ∈ G ∧ y ∈ L ∪ U (bzw. x ∈ L ∧ y ∈ G ∪ U ):

Antwort: y < x (bzw. x < y).

iii) Sei x, y ∈ U .

(8)

Query Antwort des Gegenspielers

Anzahl der Paare in U

|U | |L| |G|

1. x r q q q r y

r x r y

+1 — — —

2. x r q q q r y

r r

r r

A A

y → G

x -1 -1 0 +1

3. x r q q q

r r y

r r

r A

A y → L x

-1 -1 1 0

4. r

x r q q q r y

r r r r r

y → G

x -1 -1 0 +1

5. x r r

q q q r r y

r r r

r H

H y → L x

-1 -1 +1 0

6. x r r

q q q r y r

r r

r x r

&

L y

-1 -1 +1 0

(9)

Die erste Phase endet, wenn |L| = n−1 2 oder |G| = n−1 2 . W¨ ahrend der Phase 1 enth¨ alt U mindestens zwei (in U ) maximale und mindestens zwei (in U ) minimale Elemente (bzgl. des DAGs). ⇒ W¨ ahrend Phase 1 kann der Algorithmus den Median mit Sicherheit nicht bestimmen.

Der Gegenspieler beginnt mit Phase 2, sobald

|L| wird n − 1

2 oder |G| wird n − 1 2 . O.B.d.A.:

|L| = n − 1 2

Der Gegenspieler zwingt nun den Algorithmus, das minimale

Element in U bzgl. der gesamten totalen Ordnung zu bestimmen

(da dieses unter den Vorgaben der Median ist).

(10)

Beweis (Forts.):

Laufzeitanalyse:

C := Anzahl der Vergleiche P := Anzahl der Paare in U

i) In der Phase 1 gilt folgende Invariante: C − P + 2|U | ≥ 2n.

Dies wird durch vollst¨ andige Induktion gezeigt:

Induktionsanfang: 0 − 0 + 2n ≥ 2n;

Induktionsschritt: Gem¨ aß der Tabelle.

ii) Sei C die Anzahl der Vergleiche am Ende der Phase 1. In der Phase 2 werden noch ≥ |U | − 1 − |P | Vergleiche n¨ otig. Die Anzahl der Vergleiche f¨ ur alle Phasen ist damit

≥ C + |U | − 1 − |P| .

(11)

Beweis (Forts.):

Am Ende der Phase 1 gilt ja C ≥ 2n + |P | − 2|U | (wg. Invariante).

Damit gilt f¨ ur die Anzahl der Vergleiche:

≥ 2n + |P | − 2|U | + |U | − 1 − |P | = 2n − |U | − 1

≥ 3 2 n − 3

2 =

= 3

2 n − 2

, da |U | ≤ n + 1

2

(12)

6. Eine bessere untere Schranke

Satz 89

Sei T ein Entscheidungsbaum f¨ ur die Bestimmung des i-kleinsten von n verschiedenen Elements, mit i 2 ≥ log

h n i

1

n−i+1

i

+ 3. Dann gilt, wenn

p := 2 s

log n

i

1 n − i + 1

+ 3 − 2 gesetzt wird,

H¨ ohe(T ) ≥ log n

i

2 n−p n − i + 1

.

Bemerkung: i = n

2

→ d n

n2

e

= Θ( 2

n

n ); also erhalten wir eine

untere Schranke von H¨ ohe(T ) ≥ 2n − o(n) f¨ ur die Bestimmung

(13)

Beweis:

Der Beweis setzt sich aus einem Gegenspieler- und einem Abz¨ ahlargument zusammen, um zu zeigen

” T hat viele Bl¨ atter.“

Sei A Teilmenge der Schl¨ ussel, |A| = i. Wir konstruieren einen Teilbaum T A von T, so dass alle Bl¨ atter von T A auch Bl¨ atter von T sind, und zeigen: T A hat viele Bl¨ atter (n¨ amlich 2 n−p ). Es gibt

n i

M¨ oglichkeiten, A zu w¨ ahlen, jedes Blatt von T kommt in

h¨ ochstens n − i + 1 T A ’s vor.

(14)

Beweis (Forts.):

Beobachtungen:

Jedes Blatt w von T liefert folgende Informationen:

answer(w) −−−→ liefert i-kleinstes Element x

little(w) −−−→ liefert i − 1 Elemente < x

big(w) −−−→ liefert n − i Elemente > x

(15)

Beweis (Forts.):

W¨ ahle A als beliebige Teilmenge der n gegebenen Schl¨ ussel, mit

|A| = i. Wir geben f¨ ur den Gegenspieler eine Strategie an, welche dazu f¨ uhrt, dass wir durch Zurechtschneiden aus T einen Baum T A

konstruieren k¨ onnen, so dass gilt:

T A ist Bin¨ arbaum

jedes Blatt von T A ist auch Blatt von T , d.h. durch das

Zurechtschneiden entstehen keine zus¨ atzlichen Bl¨ atter

f¨ ur jedes Blatt w von T A gilt: little(w) ⊂ A

(16)

Beweis (Forts.):

Setze A ¯ gleich dem Komplement von A, sowie r :=

s log

n i

1 n − i + 1

+ 3 s := r − 1

Damit gilt: p = r + s − 1.

Die Konstruktion (das “Zurechtstutzen“) von T zu T A erfolgt in

zwei Phasen.

(17)

Beweis (Forts.):

Erste Phase: Breitensuche von der Wurzel nach unten.

Betrachte Knoten x. Definiere:

C(x) sind die Elemente a ∈ A, f¨ ur die es kein b ∈ A und keinen Knoten auf dem Pfad von der Wurzel von T zu x gibt, an dem a mit b mit dem Ergebnis a < b verglichen wurde.

c(x) sind entsprechend die im Knoten x bekannten Minima in A. ¯

s(x, a) ist, f¨ ur a ∈ A, die Anzahl der Elemente ∈ c(x) ⊆ A, ¯

mit denen a auf dem Pfad von der Wurzel zu x verglichen

wurde.

(18)

'

&

$

%

r r r

r r r r

A A A

C(x) pp A

pp pp pp pp pp pp pp pp pp p

pp pp pp pp pp pp pp pp pp pp p

pp pp pp pp pp pp pp pp pp pp p

pp pp pp pp pp pp pp pp pp pp pp pp pp p

←−−−−− Vergleiche '

&

$

% g g g

g

r r r

r r

r r

r

A A

A A ¯

c(x)

# =: s(x, a) f¨ ur a ∈ A fest r

r r r

x x j

< y ? j

x i < y ? i

Wurzel

Referenzen

ÄHNLICHE DOKUMENTE

Pfadkompression ben¨ otigt f¨ ur eine (beliebige) Folge von m Union- und Find-Operationen Zeit O(m log ∗ n).. Union-Find mit gewichteter Vereinigung

Zusammen mit (17) zeigen sie, daß in einer Booleschen Algebra jede der beiden zweistelligen Verkn¨ upfungen zusammen mit der Komplementbildung die andere zweistellige Verkn¨ upfung

Man bestimme die Koordinaten aller Ecken, wenn eine Ecke im Ursprung liegt und ⃗a,⃗b, ⃗ c als Ortsvektoren aufgefasst werden.. h , welche C und D enth¨ alt, in Parameterform und

Um die Umkehrung dieses Satzes zu zeigen, muss man zu jedem Hartogs-konvexen Gebiet eine globale holomorphe Funktion konstruieren, die in jedem Randpunkt vollst¨ andig singul¨ ar

Eine hinreichende Bedingung f¨ ur ein lokales Minimum (Maximum) in einem kritischen Punkt x ∗ im Innern des Definitionsbereichs D ist, dass ebenfalls die zweiten partiellen

[r]

Die Menge freeElements enth¨ alt alle freien Elemente, die Menge usedElements enth¨ alt alle Elemente, die gerade verwendet werden.. Neu hinzugef¨ ugte Elemente werden als

Vergleichsbasierte Sortierverfahren benötigen im schlechtesten Fall und im Mittel mindestens Ω(n log n) Schlüsselvergleiche..