Top-Fragen
Zeitleiste
Chat
Kontext
Merge Insertion
Sortierverfahren Aus Wikipedia, der freien Enzyklopädie
Remove ads
Merge Insertion (auch bekannt als Ford-Johnson-Algorithmus) ist in der Informatik ein rekursives, vergleichsorientiertes Sortierverfahren, das mit weniger Vergleichen als Mergesort auskommt.
Remove ads
Idee des Algorithmus
Der tatsächliche Aufbau des Algorithmus ist schwer zu verstehen. Deshalb soll an dieser Stelle die Idee von Merge Insertion kurz erläutert werden.
Mergesort benötigt immer die gleiche Anzahl Vergleiche abhängig von der Eingabelänge , egal ob eine Zweierpotenz ist oder nicht. Diese Tatsache macht sich Merge Insertion zu Nutze und schafft es deshalb, mit weniger Vergleichen als Mergesort auszukommen. Die Idee ist, die Eingabe bei der Rekursion nicht in möglichst gleich große Teillisten aufzuspalten, sondern immer die nächstgrößere Zweierpotenz zu bearbeiten. Dadurch benötigt Merge Insertion im Vergleich zur informationstheoretischen unteren Schranke nur eine sehr geringe Anzahl Vergleiche mehr, als theoretisch notwendig.
Remove ads
Laufzeit
Merge Insertion hat im Best-, Average- und Worst-Case eine -Komplexität.[1][2]
Algorithmus als Pseudocode
procedure MergeInsertion():
1. Sortiere die Eingabe mit je einem Vergleich in disjunkte Paare. Ergebnis: mit 2. Sortiere die größeren Elemente rekursiv mit MergeInsertion. 3. Nenne das Ergebnis aus Schritt 2 die Hauptkette: Füge nun die restlichen Elemente durch Binäres Einfügen in der Reihenfolge in die Hauptkette ein.
Remove ads
Literatur
- Donald E. Knuth: Sorting and Searching/The Art of Computer Programming. Addison-Wesley Longman, 2. Auflage, 2003, ISBN 0201896850
Einzelnachweise
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads