Der Algorithmus ist bekannt für seine Effizienz in Bezug auf Komplexität (Zeit und Speicher) und für das Sortieren von Listen:
- Wir schneiden die Daten in zwei gleiche Teile.
- Wir sortieren die Daten von jedem Teil (wir teilen jeden Teil auf, der Algorithmus wird rekursiv).
- Wir führen die beiden Teile zusammen.
Wir tauschen das Startarray rekursiv in zwei Subarrays auf, bis das Array nur noch ein Element enthält. Sobald die Elemente unabhängig voneinander sortiert sind, wird ab diesem Zeitpunkt die Backtracking beginnt und wir werden die Untertabellen zusammenführen in eins, bis Sie das sortierte Startbrett erhalten. Die Zusammenführung besteht aus aufeinanderfolgenden Vergleichen.
Beispiel
Angenommen, wir möchten die folgende Tabelle sortieren: [ 38, 27 ,43, 3, 9, 82, 10]
Algorithm
TriFusion ALGORITHM (T, links, rechts);
T: Wertetabelle;
links, rechts: Ganzzahl;
center: Ganzzahl;
NACH OBEN
IF (links < rechts) THEN
← Mitte (links + rechts) / 2;
TriFusion (T, links, Mitte);
TriFusion (T, Mitte + 1, rechts);
MERGE(T, links, Mitte, rechts);
FSI
FIN.
Commentaires (0)
Laisser un commentaire
Connectez-vous pour commenter
Rejoignez la discussion et partagez vos connaissances avec la communauté
Chargement des commentaires...