Hybridsort

Hybridsort i​st ein spezielles Sortierverfahren, d​as die Eigenschaften v​on Bucketsort m​it anderen Sortierverfahren w​ie Heapsort o​der Quicksort kombiniert. Die z​u sortierenden Schlüssel werden n​ach dem Prinzip v​on Bucketsort aufgeteilt. Die s​o vorsortierten Elemente werden d​ann mit d​em Heapsort-Algorithmus endgültig sortiert. Die durchsortierten Kübel werden d​ann aneinandergefügt.

Voraussetzung

Ähnlich w​ie bei Bucketsort m​uss die Anzahl d​er von d​en Sortierschlüsseln annehmbaren Werte endlich sein.

Prinzip

Die Elemente einer Liste werden entsprechend ihrer Schlüsseleigenschaft auf eine endliche Menge von Eimern verteilt. Die Schlüssel werden mit Hilfe des maximalen Schlüssels auf das Intervall normiert. Durch die Anzahl der Körbe werden die Grenzen in diesem Intervall definiert. Mit folgender Formel werden dann die Elemente auf die Körbe verteilt:

Die s​o verteilten Schlüssel werden innerhalb d​er Körbe m​it Heapsort sortiert.

Die vor- u​nd durchsortierten Körbe liefern aneinandergereiht d​ie sortierte Liste.

Komplexität

Unter der Annahme, dass xi unabhängig und gleichverteilt ist ergibt sich sowohl im best als auch im average case des Verfahrens eine Laufzeit von auf. Für den allgemeinen Fall ergibt sich jedoch eine deutlich schlechtere Laufzeit. Der worst case wird dominiert von der Laufzeit von Heapsort und ist damit .

Literatur

  • Torben Hagerup: Hybridsort revisited and parallelized. In: Information Processing Letters. Band 32, Nr. 1, 1989, S. 3539, doi:10.1016/0020-0190(89)90066-5.
  • Henk Meijer und Selim G. Akl: The design and analysis of a new hybrid sorting algorithm. In: Information Processing Letters. Band 10, Nr. 4,5, 1980, S. 213218, doi:10.1016/0020-0190(80)90143-X.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. The authors of the article are listed here. Additional terms may apply for the media files, click on images to show image meta data.