MergeSort

Aus ProgrammingWiki

Wechseln zu: Navigation, Suche

Implementation von MergeSort

 

Quelltext überprüfen:

Ungeordnete Zufallszahlen:

 

Geordnete Zufallszahlen:

MergeSort ist damit auch ein klassischer Teile-und-herrsche-Algorithmus.

Effizienz von MergeSort

Wir wollen auch für MergeSort eine empirische Analyse des Zeitaufwands vornehmen und definieren dazu:

Wenige Tests bestätigen unsere Vermutung: MergeSort scheint ebenso effizient zu sein wie QuickSort.
Die Überprüfung erfolgt wieder mit den bekannten Prozeduren für Mehrfachexperimente sowie den entsprechenden grafischen Darstellungen. Dabei wollen wir auch den Fall einbeziehen, bei dem bereits eine sortierte Zahlenliste vorliegt:

MergeSort: average-case

 

MergeSort: worst-case

Damit bestätigt sich, dass der Zeitaufwand im Average- und Worst-case-Fall $T(n) = \mathcal{O}(n \cdot \log_2 n)$ beträgt.

Zurück zu QuickSort.

Persönliche Werkzeuge