Schnelle Sortierung in JavaScript - Komplette Anleitung zum schnellen Sortieren in JavaScript

Inhaltsverzeichnis:

Anonim

Einführung in das schnelle Sortieren in JavaScript

Ein Sortieralgorithmus ist einer der wichtigen Teile der Datenstruktur. Sortieren ist die Art und Weise, wie die Gruppe von Elementen in einer bestimmten Weise angeordnet wird. Wann immer wir über schnellere Sortieralgorithmen sprechen, kommt die schnelle Sortierung ins Spiel. Dies ist eine der beliebtesten Sortiertechniken, je nach Ausführungszeit. Dies ist aufgrund seiner Leistung eine vergleichsweise bessere Wahl für Entwickler oder Codierer. Die Schnellsortierung funktioniert nach der Divide- und Conquers-Regel. Das heißt, es teilt die Liste in zwei und dann zwei Listen, die rekursiv weiter in 4 unterteilt sind und so weiter. In diesem Artikel werden wir sehen, wie die schnelle Sortierung auch mit Beispielcode funktioniert. Wir werden auch sehen, wie schnell es im Vergleich zu anderen verschiedenen Sortieralgorithmen ist. Wir werden die verschiedenen Komponenten dieses Quick-Sort-Algorithmus sehen.

Operationen in der Schnellsortierung

Es gibt drei Hauptoperationen beim schnellen Sortieren von JavaScript:

  • Partitionierung einer Liste: Division oder Array-Liste unter Verwendung von dividieren und erobern. Dies ist der erste Schritt, den wir in dieser Sortiertechnik sagen können. Dazu benötigen wir ein Pivot-Element (mittleres Element oder nah am mittleren Element).
  • Artikel tauschen: Dies ist der Hauptzweck jedes Sortieralgorithmus, um als Ausgabe zur Wunschliste zu gelangen. Dies ist ein Mechanismus zum Sortieren, um den Wert von einem zum anderen zu ersetzen. Zum Beispiel ist A = 10; B = 20; Wenn jemand nach einem Tausch fragt, ist der Wert von A 20 und der von B 10.
  • Rekursive Operation: Dies spielt bei der schnellen Sortierung eine große Rolle. Als die Dinge immer wieder zu tun, ist es nicht so viel möglich und zuverlässig, ohne die rekursive Funktion zu haben. Dies ist eine Funktion, die sich selbst aufruft (dieselbe Funktion), um die Arbeit zu erledigen. Dies spielt eine große Rolle, wenn wir eine Aufgabe immer wieder mit demselben Ansatz und im selben Kontext ausführen.

Vergleich des Sortieralgorithmus

Es gibt verschiedene Arten von Sortieralgorithmen. Da JavaScript eine Programmiersprache ist, unterstützt es alle damit verbundenen Sortieralgorithmen. Jeder Sortieralgorithmus hat seine Vor- und Nachteile. Hier ist die Liste der Sortieralgorithmen und ihrer Leistung und anderer Matrizen:

Sortieralgorithmus Zeitliche Komplexität
I'm besten fall Durchschnittlicher Fall Schlimmsten Fall
Bubble SortΩ (N)Θ (N 2 )O (N 2 )
Auswahl sortierenΩ (N 2 )Θ (N 2 )O (N 2 )
Sortieren durch EinfügenΩ (N)Θ (N 2 )O (N 2 )
Zusammenführen, sortierenΩ (N log N)Θ (N log N)O (N log N)
Heap SortΩ (N log N)Θ (N log N)O (N log N)
Schnelle SorteΩ (N log N)Θ (N log N)O (N 2 )

Wie wir in der Liste sehen können, ist die SCHNELLE Sortierung vergleichsweise schneller als die Blasensortierung, Auswahlsortierung und Einfügesortierung.

Wie funktioniert das schnelle Sortieren in JavaScript?

Schritt 1 : So erhalten Sie das Pivot-Element: Bei jeder Teilung und Eroberung spielt die Auswahl eines richtigen Pivots eine wichtige Rolle. Normalerweise versuchen wir, das mittlere Element des Arrays als Pivot-Element zu erhalten. Dies ist das Element, von dem aus wir das einzelne Array in zwei aufteilen, um die Sortierung zu verarbeiten.

Schritt 2 : Starten Sie die linken Zeiger als erstes Element des Eingabearrays.

Schritt 3 : Starten Sie die rechten Zeiger als letztes Element des Eingabearrays.

Schritt 4 : Jetzt vergleichen wir die Elemente am linken Zeiger mit dem ausgewählten Pivot-Element und tauschen den Wert bei Bedarf entsprechend den Geschäftsanforderungen aus. Dann vergleichen wir den rechten Zeiger mit dem Pivot-Element.

Schritt 5: Bewegen Sie beide zum nächsten. Alle obigen Schritte folgen immer wieder unter Verwendung eines rekursiven Ansatzes.

Beispiel für die schnelle Sortierung in JavaScript

Dies ist eine Funktion, die sich um die schnelle Sortierung in JavaScript kümmert. In diesem Beispiel übergeben wir die vollständige Liste des Arrays als Eingabe und erhalten das sortierte Array als Ausgabe.


Quick Sort in JavaScript

function quick_Sorting(array) (
if (array.length <= 1) (
return array; // if there is only one element then return the same
) else
(
var left = ();
var right = ();
var outputArray = ();
var pivot = array.pop();
var length = array.length;
for (var i = 0; i < length; i++) (
if (array(i) <= pivot) (
left.push(array(i));
) else (
right.push(array(i));
)
)
return outputArray.concat(quick_Sorting(left), pivot, quick_Sorting(right));
)
)
var myList = (3, 10, 2, 5, -5, 4, 7, 1);
alert("Input Array List: " + myList);
var sortedList = quick_Sorting(myList);
alert("Output Array List: " + sortedList);

Aufgrund seiner beeindruckenden Leistung verwenden die meisten Coder diese Sortiertechnik, um die eingebaute Sortierfunktion zu implementieren. In verschiedenen Programmiersprachen wurde Quick Sort für die integrierte Sortierfunktion verwendet. Es gibt verschiedene andere Möglichkeiten, ein Programm zum Ausführen der Schnellsortierungsoperationen zu schreiben, und alle Funktionen treffen sich zu einem Punkt, der Teilen und Erobern ist. Diese Divide and Conquer-Regel ist also eine Schlagregel, die mit der schnellen Sortierung in JavaScript verarbeitet werden muss. Nicht nur in JavaScript, sondern auch in allen Programmiersprachen.

Ausgabe:

Empfohlene Artikel

Dies ist eine Anleitung zum schnellen Sortieren in JavaScript. Hier diskutieren wir, wie schnell das Sortieren in Javascript funktioniert, wie es funktioniert und wie der Sortieralgorithmus anhand des Beispiels verglichen wird. Sie können sich auch die folgenden Artikel ansehen, um mehr zu erfahren -

  1. Beispiele zur Implementierung von Quick Sort in Java
  2. Was ist Case Statement in JavaScript?
  3. Eigenschaften von Zusammenführungssortierung in JavaScript
  4. Arten von Konstruktoren in JavaScript
  5. Heap-Sortierung in Python
  6. In PHP tauschen
  7. Einfügesortierung in JavaScript
  8. Rekursive Funktion in C
  9. Rekursive Funktion in JavaScript