Überblick 5.1 Sequentielles Suchen
Überblick 5.1 Sequentielles Suchen
Überblick 5.1 Sequentielles Suchen
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Nicht-deterministische Algorithmen<br />
• Beispiel:<br />
Nicht-deterministischer Algorithmus ) erlaubt beim Sortieren von<br />
x 1 = 5, x 2 = 2, x 3 = 3, x 4 = 4, x 5 = 1 (+)<br />
eine der folgenden 7 Austauschoperationen:<br />
x 1 :=: x i für 2 ! i ! 5 und x j :=: x 5 für 2 ! j ! 4<br />
Zustand (+) könnte entstanden sein durch exotische Strategie, die von<br />
der Mitte zu den beiden Enden sortiert, und es könnte bekannt sein,<br />
daß eine einzige Austauschoperation x 1 :=: x 5 den Sortierprozeß<br />
abschließen würde. Der nicht-deterministische Algorithmus ) bietet<br />
jedoch keine Möglichkeit, dieses Wissen auszudrücken und zu nutzen.<br />
$ Kein Nicht-Determinismus!<br />
Zu entwickelnde Kontrollstruktur muß sorgfältig die Reihenfolge der<br />
auszuführenden Operationen festlegen, um die bereits gesammelten<br />
Informationen möglichst optimal zu nutzen!<br />
© Klaus Hinrichs Informatik II – <strong>Suchen</strong> und Sortieren<br />
Intrinsische Komplexität<br />
• Grenzen der Optimierung:<br />
Ohne irgendwelche bereits vorhandene Informationen muß jedes Element<br />
mindestens einmal inspiziert und i. a. mindestens einmal bewegt<br />
werden $ mindestens "(n) primitive Operationen sind notwendig.<br />
• Sammeln von Informationen nur durch Beantworten binärer Fragen<br />
(z.B. ja/nein Fragen, Vergleich zweier Elemente mit Antwort ! oder >) $<br />
mindestens n · log 2 n Fragen sind notwendig (siehe Abschnitt 5.6) $<br />
"(n · log n) ist untere Schranke in diesem Berechenbarkeitsmodell.<br />
• Umordnen von Elementen: durchschnittlicher Abstand eines Elementes<br />
von seiner korrekten Position $ n / 3 (siehe Abschnitt 4.7).<br />
Transfer eines Elementes kann z.B. durch 1 Schritt der Länge n / 3<br />
oder n / 3 Schritte der Länge 1 erfolgen.<br />
Umordnung nur durch Austausch benachbarter Elemente $<br />
durchschnittlich !(n 2 ) Austauschoperationen sind nötig $<br />
Kurze Schritte nicht ausreichend für effizienten O(n · log n) Algorithmus!<br />
© Klaus Hinrichs Informatik II – <strong>Suchen</strong> und Sortieren<br />
5-19<br />
5-20