"Quick Art " ist ein Sortier- Algorithmus, der in n * log ( n ) Zeit, die es sehr effizient für die Sortierung von großen Datenmengen macht läuft . Es verwendet eine Teile-und -herrsche- Ansatz, effizient spaltet Datensätze auf mehrere Komponenten gleichzeitig arbeiten. Die C + + -Standard-Bibliothek bietet eine Funktion, die den schnellen Sortieralgorithmus implementiert. Sortieren einer Liste von Zahlen mit schnellen Sorte ist einfach, wenn man mit diesen Standard-Bibliothek Implementierung des Algorithmus . Things You
Texteditor
Compiler
brauchen anzeigen Weitere Anweisungen
1
Fügen Sie die Standard-Bibliothek header " stdlib.h " . Dieser Header enthält die schnelle Art Umsetzung, die durch den Aufruf der Funktion " qsort " zugegriffen wird :
# include
2
Erstelle deinen Vergleichsfunktion . Der Vergleich Funktion akzeptiert zwei Argumente vom Typ " void * ", die zu einem bestimmten Datentyp umgewandelt werden müssen und dann verglichen. Wenn das erste Element kleiner ist als die zweite , muss ein negativer Wert von dieser Funktion zurück. Wenn das erste Element größer ist als die zweite , zurück einen positiven Wert. Wenn beide Elemente gleich sind, Null zurück :
int CompareIntegers (const void * arg1, const void * arg2 )
{ int
val1 = * (int *) arg1 ;
int val2 = * (int *) arg2 ;
if ( val1 < val2 )
{
return -1 ;
}
else if ( val1 > val2 )
{
return 1; }
//if wir haben hier beide Elemente gleich
return 0 sind ;
}
3
In Ihrem Code , rufen Sie die Funktion qsort . Die qsort Funktion nimmt vier Argumente : . Einen Zeiger auf das Array zu sortieren, die Anzahl der Elemente im Array , die Größe jedes Element im Array , und der Vergleichsfunktion
//Art der Array von ganzen Zahlen
qsort ( arrayToSort , numberOfElements , sizeof ( int) , CompareIntegers );