Sie sind auf Seite 1von 2

AlgoDat 3.

4
then

(a)
x_2

else

x_4

then

x_2

else

x_3

then

x_1

else

x_4

then

x_1

else

x_3

if x_1<x_2

then

else

(c)

if x_3<x_4

if x_3<x_4

then

if x_2<x_4

else

if x_2<x_3

then

if x_1<x_4

else

if x_1<x_3

Wie an 3.4.a und 3.4.b ersichtlich benotigt der Algorithmus imme

r
die gleiche Anzahl an Vergleiche - in jedem Fall.
Die probabalistische Annahme ist de facto egal, da der Algo.
wie an den vorherigen Aufgaben ersichtlich.
(d)

Aendern muss man in dem Programm von 3.4.a eigentlich nur die
Vergleiche in den If-Konstrukten.
Bsp.:
if x_1=<x_2

then

x_2

else

x_4

then

x_2

else

x_3

then

x_1

else

x_4

then

x_1

else

x_3

then

else

if x_3=<x_4

if x_3=<x_4

then

if x_2=<x_4

else

if x_2=<x_3

then

if x_1=<x_4

else

if x_1=<x_3

Je nach Nummerierung der Elemente, die gleich sind, gibt das Bsp
. die
richtigen Elemente zurueck. Wenn Gruppen gleicher Elemente als e
ines
gezaehlt werden, muss noch in zusaetzlichen If-Konstrukten der F
all
der Gleichheit der Elemente behandelt werden. Oder man kann eine
feste Priorisierung der Elemente durch die Reihenfolge und Art d
er
If-Konstrukte realisieren.
Sie ist also, je nach Betrachtungsweise, hilfreich und macht die

Ordnung der Elemente eindeutig. Ansonsten koennten unterschiedli


che
Elemente als Zweitkleinstes bezeichnet werden, sofern sie gleich
sind.
(b)