Allerdings wird es in vielen Büchern nicht sehr klar erklärt und verschiedene Lehrmaterialien haben unterschiedliche Umsetzungsmethoden.
Ich werde hier die einfachste Idee zum schnellen Sortieren als Referenz aufschreiben.
Ich hoffe, dass Sie, egal welche Sprache Sie verwenden, die schnellen Sortierideen und Schreibmethoden anhand dieses einfachen Codes leicht verstehen können.
Kopieren Sie den Codecode wie folgt:
Funktion quick_sort(list, start, end) {
if (Anfang < Ende) {
var Pivotpos = Partition(list, start, end); //Finde die Basis für die schnelle Sortierung
quick_sort(list, start, Pivotpos - 1); //Schnelle Sortierung des linken
quick_sort(list, Pivotpos + 1, Ende); //Schnell das Richtige sortieren
}
}
// Passen Sie eine Sequenz in zwei Bereiche dividiert durch die Basiszahl an, eine Seite ist nicht kleiner als die Basiszahl und die andere Seite ist nicht größer als die Basiszahl
Funktion partition(list, start, end) {
var Pivotpos = Start;
var Pivot = Liste[Start];
var tmp;
for(var i = start + 1; i <= end; i ++) {
if (list[i] < Pivot) {
tmp = list[i];
Pivotpos += 1;
list[i] = list[pivotpos];
list[pivotpos] = tmp;
}
}
tmp = list[start];
list[start] = list[pivotpos];
list[pivotpos] = tmp;
Pivotpos zurückgeben;
}
var list = [8,2,4,65,2,4,7,1,9,0,2,34,12];
quick_sort(list, 0, list.length);