Merge Insertion

Merge Insertion (auch bekannt als Ford-Johnson-Algorithmus) ist in der Informatik ein rekursives, vergleichsorientiertes Sortierverfahren, das mit weniger Vergl…

Merge Insertion
QS-Informatik
Beteilige dich an der Diskussion!
Dieser Artikel wurde wegen inhaltlicher Mängel auf der Qualitätssicherungsseite der Redaktion Informatik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Informatik auf ein akzeptables Niveau zu bringen. Hilf mit, die inhaltlichen Mängel dieses Artikels zu beseitigen, und beteilige dich an der Diskussion! (+)

Merge Insertion (auch bekannt als Ford-Johnson-Algorithmus) ist in der Informatik ein rekursives, vergleichsorientiertes Sortierverfahren, das mit weniger Vergleichen als Mergesort auskommt.

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.

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.

Literatur

Einzelnachweise

  1. Wikipediaseite zu Sortierverfahren
  2. Florian Stober, Armin Weiß: On the Average Case of MergeInsertion. Abgerufen am 20. Januar 2022.

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.