Einführung
In diesem Lab arbeiten wir an einem JavaScript-Programmieraufgabe, die sich auf das Sortieren von Arrays mit dem Bubblesort-Algorithmus konzentriert. Ziel dieses Labs ist es, Ihnen zu helfen, zu verstehen, wie der Bubblesort-Algorithmus funktioniert, und Ihnen die Möglichkeit zu geben, Ihre JavaScript-Programmierkenntnisse zu üben. Am Ende dieses Labs werden Sie einen besseren Überblick haben, wie man den Bubblesort-Algorithmus in JavaScript implementiert und wie man ihn verwenden kann, um Arrays von Zahlen zu sortieren.
Bubblesort-Algorithmus
Um zu üben, öffnen Sie das Terminal/SSH und geben Sie node ein, um zu starten. Der Bubblesort-Algorithmus sortiert ein Array von Zahlen.
Schritte zum Sortieren eines Arrays mit dem Bubblesort-Algorithmus:
Deklarieren Sie eine Variable
swapped, die angibt, ob während der aktuellen Iteration Werte getauscht wurden.Verwenden Sie den Spread-Operator (
...), um das ursprüngliche Arrayarrzu klonen.Verwenden Sie eine
for-Schleife, um über die Elemente des geklonten Arrays zu iterieren, wobei die Schleife vor dem letzten Element endet.Verwenden Sie eine geschachtelte
for-Schleife, um über den Abschnitt des Arrays zwischen0undizu iterieren, tauschen Sie beliebige benachbarte ungeordnete Elemente aus und legen Sieswappedauftruefest.Wenn
swappednach einer Iterationfalseist, sind keine weiteren Änderungen erforderlich, daher wird das geklonte Array zurückgegeben.
Beispielcode:
const bubbleSort = (arr) => {
let swapped = false;
const a = [...arr];
for (let i = 1; i < a.length; i++) {
swapped = false;
for (let j = 0; j < a.length - i; j++) {
if (a[j + 1] < a[j]) {
[a[j], a[j + 1]] = [a[j + 1], a[j]];
swapped = true;
}
}
if (!swapped) return a;
}
return a;
};
bubbleSort([2, 1, 4, 3]); // [1, 2, 3, 4]
Zusammenfassung
Herzlichen Glückwunsch! Sie haben das Bubblesort-Lab abgeschlossen. Sie können in LabEx weitere Labs absolvieren, um Ihre Fähigkeiten zu verbessern.