Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung Nächste ÜberarbeitungBeide Seiten, nächste Überarbeitung | ||
faecher:informatik:oberstufe:algorithmen:sortieren:landau_revisited:start [31.01.2022 17:53] – [Quicksort] sbel | faecher:informatik:oberstufe:algorithmen:sortieren:landau_revisited:start [31.01.2022 18:07] – [Die Landau Notation im Detail] sbel | ||
---|---|---|---|
Zeile 27: | Zeile 27: | ||
Quicksort hat im **Worst Case** eine Laufzeit von O(n< | Quicksort hat im **Worst Case** eine Laufzeit von O(n< | ||
</ | </ | ||
+ | |||
+ | Aber was bedeutet **Worst Case** und **Avergae Case** genau? | ||
+ | |||
+ | ===== Die Landau Notation im Detail ===== | ||
+ | |||
+ | Die Landau Notation unterschlägt Konstanten - wenn man schreibt O(n) meint man eigentlich O(c*n). Das kann man sich am Beispiel eine Methode klar machen, die die Elemente eines Arrays ausgibt: | ||
+ | |||
+ | < | ||
+ | printArray(array): | ||
+ | für jedes Element element von array: | ||
+ | print element | ||
+ | </ | ||
+ | |||
+ | Diese Methode hat die Laufzeit O(n) - sie muss jedes Element einmal anfassen uns ausgeben, bei doppelt so vielen Elementen dauert das doppelt so lange. | ||
+ | |||
+ | Jetzt betrachten wir die folgende Methode (Pseudocode): | ||
+ | |||
+ | < | ||
+ | printArrayMitPause(array): | ||
+ | für jedes Element element von array: | ||
+ | print element | ||
+ | warte(10s) | ||
+ | </ | ||
+ | |||
+ | Die Methode '' | ||
+ | |||
+ | Darf man das? | ||
+ | |||
+ | Dazu vergleichen wir nochmal gedanklich die einfach Suche und die binäre Suche und ergänzen die Laufzeiten mit realen Zeitfaktoren: | ||
+ | |||
+ | ^ Einfache Suche ^ Binäre Suche ^ | ||
+ | | '' | ||
+ | |||
+ | |||
+ | Die einfache Suche läuft also beispielsweise auf einem sehr viel schnelleren Rechner, so dass pro Element lediglich 10 Millisekunden hinzukommen - die binäre Suche läuft auf einem langsameren Rechner, die Zeit wächst hier zwar logarithmisch aber mit einem Faktor von 1 Sekunde. | ||
+ | |||
+ | |||