ai.casselfornia
Newbie
- Registriert
- Juni 2013
- Beiträge
- 7
Hallo Leute,
ich habe ein Verständnis Problem bei der Laufzeit Analyse des Bubblesort Sortierverfahren.
Wieso hat Bubblesort in seiner Standard Implementierung eine Best-Case Laufzeit von O(n)? Ich habe mal ein paar Experimente gemacht und die Anzahl der Vergleich bleibt bei mir immer O(n2), was für mich auch absolut logisch erscheint, da ja jedes Element mit jedem anderen in 2 verschachtelten for Schleifen verglichen wird.
Wenn also die Anzahl der Vergleiche immer quatratisch zur Datenmenge n ist, was ist dann mit Laufzeit gemeint? Die Anzahl der Vertauschungen ist doch im Best Case (aufsteigend sortiert) immer 0. Also wie kommt dieses O(n) zustande? Liegt es vielleicht an einer Optimierung, mit Prüfung auf vorzeitiges Ende?
Ich weiß, Bubblesort ist im Grunde der simpelste Algorithmus, aber ich tue mich auch nicht mit dem Verständnis der Funktionweise schwer, sondern eher mit dem Begriff der Laufzeit (oder Schritte).
Ich hoffe ihr könnt mir helfen.
Gruß,
Andre
ich habe ein Verständnis Problem bei der Laufzeit Analyse des Bubblesort Sortierverfahren.
Wieso hat Bubblesort in seiner Standard Implementierung eine Best-Case Laufzeit von O(n)? Ich habe mal ein paar Experimente gemacht und die Anzahl der Vergleich bleibt bei mir immer O(n2), was für mich auch absolut logisch erscheint, da ja jedes Element mit jedem anderen in 2 verschachtelten for Schleifen verglichen wird.
Wenn also die Anzahl der Vergleiche immer quatratisch zur Datenmenge n ist, was ist dann mit Laufzeit gemeint? Die Anzahl der Vertauschungen ist doch im Best Case (aufsteigend sortiert) immer 0. Also wie kommt dieses O(n) zustande? Liegt es vielleicht an einer Optimierung, mit Prüfung auf vorzeitiges Ende?
Ich weiß, Bubblesort ist im Grunde der simpelste Algorithmus, aber ich tue mich auch nicht mit dem Verständnis der Funktionweise schwer, sondern eher mit dem Begriff der Laufzeit (oder Schritte).
Ich hoffe ihr könnt mir helfen.
Gruß,
Andre
Zuletzt bearbeitet:
(Wort ergänzt)