17.11.2013 Aufrufe

Skript mit Übungen - Hochschule Ravensburg-Weingarten

Skript mit Übungen - Hochschule Ravensburg-Weingarten

Skript mit Übungen - Hochschule Ravensburg-Weingarten

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

✞ ☎<br />

✝16 1 ✞ ☎<br />

✆<br />

✝16 1<br />

✆<br />

✞ ☎<br />

✝14 2 ✞ ☎<br />

✆ ✝10 3<br />

✞ ☎<br />

✆<br />

✝14 2 ✞ ☎<br />

✆<br />

✝10 3<br />

✆<br />

✄ <br />

✂8 4 ✄ <br />

✁ ✂7 5 ✄ <br />

✁ ✂9 6 ✄ <br />

✁ ✂3 7 ✄ <br />

✁ ✂8 4 ✄ <br />

✁ ✂7 5 ✄ <br />

✁ ✂9 6 ✄ <br />

✁ ✂3 7<br />

✁<br />

✄ <br />

✂2 8 ✄ <br />

✁ ✂4 9 ✄ <br />

✁ ✂1 10<br />

✄ <br />

✁<br />

✂2 8 ✄ <br />

✁ ✂4 9 ✄ <br />

✁ ✂1 10 ✞ ☎<br />

✁ ✝X 11<br />

✆<br />

✞ ☎<br />

✝16 1 ✞ ☎<br />

✆<br />

✝16 1<br />

✆<br />

✞ ☎<br />

✝X 2<br />

✞ ☎<br />

✆<br />

✝10 3<br />

✞ ☎<br />

✆<br />

✝15 2 ✞ ☎<br />

✆<br />

✝10 3<br />

✆<br />

✄ <br />

✂8 4 ✞ ☎<br />

✁ ✝14 5 ✄ <br />

✆ ✂9 6 ✄ <br />

✁ ✂3 7 ✄ <br />

✁ ✂8 4 ✞ ☎<br />

✁ ✝14 5 ✄ <br />

✆ ✂9 6 ✄ <br />

✁ ✂3 7<br />

✁<br />

✄ <br />

✂2 8 ✄ <br />

✁ ✂4 9 ✄ <br />

✁ ✂1 10 ✄ <br />

✁ ✂7 11<br />

✄ <br />

✁<br />

✂2 8 ✄ <br />

✁ ✂4 9 ✄ <br />

✁ ✂1 10 ✄ <br />

✁ ✂7 11<br />

✁<br />

Analyse<br />

T (n) = O(log n).<br />

1.4 Sortieren in linearer Zeit<br />

Unter ganz bestimmten Bedingungen ist Sortieren sogar in linearer Zeit möglich, wie man<br />

an folgendem Beispiel erkannt.<br />

Idee<br />

Wenn alle in der Liste A vorkommenden Sortierschlüssel aus einer bekannten endlichen<br />

Menge sind, kann man durch einfaches Abzählen der Häufigkeiten aller in A vorkommenden<br />

Elemente eine Tabelle S der Häufigkeiten erstellen. Danach wird die Liste A überschrieben<br />

<strong>mit</strong> den Elementen in der richtigen Reihenfolge (siehe Beispiel).<br />

Beispiel 1.14 Zu sortieren sei A = (2, 1, 4, 5, 4, 7, 3, 1, 4, 4, 1). Als Häufigkeitstabelle S erhält<br />

man<br />

Sortierschlüssel 1 2 3 4 5 6 7<br />

Häufigkeit 3 1 1 4 1 0 1<br />

Daraus erhält man einfach die sortierte Liste A = (1, 1, 1, 2, 3, 4, 4, 4, 4, 5, 7).<br />

Komplexität<br />

Mit m = |S| entsteht beim Abzählen ein linearer Aufwand und beim Zurückschreiben auch<br />

und man erhält<br />

T (n) = c 1 · n + c 2 · m + c 3 · n<br />

= Θ(n + m)<br />

18

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!