Laufzeit InsertionSort/Countsort (Worst Case)?

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet

Insertionsort hat immer dieselbe Worst-Case-Laufzeit in Abhängigkeit von n.
Bei einem klassischem Insertion-Sort ist das O(n²) (oder eher nach der Gaußschen Summenformel O((n * (n+1))/2)).

Countsort muss einmal den Array durchlaufen, um die Counts zu bestimmen (O(n)) und dann für jeden Wert des Wertebereichs den Wert entsprechend oft in den Ausgabearray schreiben ((O(k)).
Entsprechend hat eine klassische Implementierung immer die Laufzeit O(n + k), auch im Worst-Case.

Das wäre dann im Vergleich O(n²) gegen O(2n). Damit sollte sich deine Aufgabe beantworten lassen.

Zu beachten sie allerdings, dass die zusätzliche Speicherplatzkomplexität bei Countingsort O(k) ist, während sie bei Insertionsort O(1) sein kann.