So sortieren Sie ein Array in Java, ohne die Sortiermethode zu verwenden

So sortieren Sie ein Array in Java, ohne die Sortiermethode zu verwenden

In Java organisiert die Sortierung Werte in absteigender oder aufsteigender Reihenfolge. Arrays sind die einfachste Datenstruktur, die einen ähnlichen Datenart enthält, der an einem zusammenhängenden Speicherort gespeichert ist. Auf die Elemente kann direkt mit den Indexnummern zugegriffen werden. In Arrays beginnen die Indizes mit 0. Statt der vordefinierten “Sortieren()Methode, es gibt auch einige andere Methoden, die zum Sortieren von Arrays verwendet werden können.

In diesem Artikel werden die anderen Verfahren zum Sortieren von Arrays erläutert, ohne die Sort () -Methode zu verwenden.

So sortieren Sie ein Array in Java, ohne die Sort () -Methode zu verwenden?

Für die Sortierung eines Arrays in Java ohne die “Sortieren()Methode, Sie können verwenden:

  • Auswahlsart
  • Sortieren durch Einfügen
  • Blasenart

Lassen Sie uns diese Sortiermethoden diskutieren und wie sie Elemente eines Arrays sortieren.

Methode 1: Sortieren des Arrays mithilfe der Auswahlsart

Das Element des kleinsten Arrays zu finden und es am Anfang des Arrays einzufügen, ist die Auswahlsorten. Es ist der grundlegendste Sortieralgorithmus, der für In-Place-Vergleiche verwendet wird. Dieser Algorithmus trennt das Array in das sortierte und das ungeortierte Teil.

Der unsortierte Teil des Arrays enthält das angegebene Array, während der sortierte Teil ursprünglich leer ist. Der sortierte Teil steht zu Beginn des Arrays, während der andere Teil des Arrays auf der anderen Seite ist. Das erste kleinste Element aus dem unsortierten Array wird dann ausgewählt und zu Beginn des Arrays platziert, das Teil des sortierten Arrays ist. Anschließend wird das zweitkleinste Element ausgewählt und in den zweiten Steckplatz platziert. Der Vorgang wird wiederholt, bis das Array vollständig sortiert wird.

Betrachten Sie das folgende Beispiel, um das angegebene Konzept klarer zu verstehen.

Beispiel

In diesem Beispiel haben wir ein ganzzahliges Array mit dem Namen namens “erstellt“Array”Initialisiert mit den folgenden Werten:

int [] array = new int [] 3,12,4,67,23,14,89,5;

Wir werden eine Ganzzahl -Variable erstellen. “Index"Damit werden die Indizes des Arrays gespeichert, die mit" initialisiert wurden "-1"Weil der Array -Index von 0 beginnt, wird er also in der Schleife gespeichert"0" Index:

int index = -1;

Hier werden wir zwei verwenden “fürSchleifen, einer wird verwendet, um das Array bis zur Länge des Arrays zu iterieren und der zweite wird verwendet, um den Zustand zu überprüfen und die Elemente auszutauschen, wenn das 1. Element kleiner als der 2. ist:

für (int i = 0; i index = i;
für (int j = i; j <= array.length-1; j++)
if (Array [j] < array[index])
index = j;


int temp = array [i];
Array [i] = Array [Index];
Array [index] = temp;

Drucken Sie dann das sortierte Array mit einem anderen aus “für”Schleife:

für (int i = 0; i < array.length; i++)
System.aus.print (Array [i] + ",");

Die Ausgabe zeigt an, dass das Array jetzt in aufsteigender Reihenfolge sortiert ist:

Notiz: Wenn Sie das Array in absteigender Reihenfolge als sortiertes Formular drucken möchten, müssen Sie nur den IF -Bedingung zum Austausch der Elemente umkehren.

Methode 2: Sortieren des Arrays mithilfe der Insertions -Sortierung

Eine weitere einfache Sortiermethode, die zum Sortieren eines Arrays verwendet wird, ist die Einfügungssortierung. Insertion -Sortierung ist ein kurzer Sortieralgorithmus, der wie Sie Spielkarten in Ihren Händen arrangieren würden. Es ist effektiv, wenn es auf einige Werte angewendet wird. Die Insertions -Sortierung ist adaptiv und ist für teilweise sortierte Datensätze geeignet.

Sortiert und ungeortiert sind die Unterkategorien des Arrays in der Insertion -Sortierung. Im Gegensatz zur Sortierart wählt die Insertion -Sortierwerte Werte aus dem ungeortierten Wert aus und fügt sie in den sortierten Teil in einem bestimmten Index ein. In der Insertions -Sortierung wird der aktuelle Wert mit dem vorhandenen Element verglichen. Wenn es ein vorhandenes Element findet, das größer als das aktuelle ist, wird das vorherige Element in die nächste Position verschoben.

Beispiel

Jetzt werden wir dasselbe sortieren “Array”Verwenden der Insertion -Sortierung. Dazu werden wir das Array bis zu seiner Länge mit dem “itererierenfür”Schleife. Wir werden die Schleife von der “beginnen1" Index. Dann setzen wir den Wert des Schlüssels als "Schlüsselwert”Und weisen Sie ihm das Element des Arrays im 1. Index zu.

Die hinzugefügte “währendDie Schleife überprüft die Elemente eines Arrays, indem sie es mit dem Schlüsselwert vergleicht und die Elemente austauscht. Die while -Schleife läuft weiter nach oben, bis die Bedingung als falsch bewertet wird. Wenn der Schlüssel größer als das vorherige Element ist, tauscht er beide Elemente aus:

für (int i = 1; i < array.length; i++)
int keyValue = array [i];
int j = i - 1;
while (j> = 0 && array [j]> keyValue)
Array [j + 1] = Array [j];
J = J - 1;

Array [j + 1] = keyValue;

Um ein sortiertes Array zu drucken, werden wir einen anderen verwenden “für”Schleife:

für (int i = 0; i < array.length; i++)
System.aus.print (Array [i] + ",");

Ausgang

Methode 3: Sortieren des Arrays mithilfe der Blasensortierung

Die Blase -Sortierung überprüft zwei nahe gelegene Elemente in der Nähe und tauscht sie aus, bis sie in der gewünschten Reihenfolge sind. Es wird genannt "Blasenart„Weil jedes Array -Element in jeder Iteration bis zum Ende des Arrays bewegt wird, ähnlich wie die Luftblasen auf die Oberseite des Wassers steigen. Es ist nur für weniger Elemente geeignet.

In Bubble Sort werden wir die ersten und zweiten Elemente vergleichen, beginnend mit dem ersten Index. Wenn das erste Element des Arrays größer ist, tauschen Sie die ersten und zweiten Elemente aus. Danach wird es einen Vergleich zwischen den nächsten beiden Elementen durchführen. Wenn sie nicht in der angegebenen Reihenfolge vorhanden sind, tauschen Sie diese Sortiermethode aus.

Beispiel

Wir werden Blasensortier verwenden, um das Array in diesem Beispiel zu ordnen. Wie bei der Sortierung der Auswahl werden zwei Schleifen verwendet, um die Elemente zu sortieren. Eine davon dient zum Ieserieren des Arrays bis zur Länge, und die zweite Schleife wird zum Überprüfen von Elementen und zum Austausch anhand der Bedingungen verwendet:

für (int i = 0; i < array.length; i++)
für (int j = i + 1; j < array.length; j++)
int temp = 0;
if (Array [i]> Array [j])
temp = array [i];
Array [i] = Array [j];
Array [j] = temp;


Für das Drucktausch -Arrays werden wir das verwendenfür”Schleife:

für (int i = 0; i < array.length; i++)
System.aus.print (Array [i] + ",");

Ausgang

Notiz: Wenn Sie das Array in absteigender Reihenfolge mit der Bubble -Sortiermethode ausdrucken möchten, müssen Sie nur das hinzugefügte Bedingung umkehren.

Wir haben alle Sortiermethoden für die Sortierung von Arrays angeboten, ohne die vordefinierte Sort () -Methode zu verwenden.

Abschluss

Um ein Array zu sortieren, ohne die Sort () -Methode in Java zu verwenden. All dies sind die einfachsten und effizientesten Sortiermethoden. Insbesondere wird die Insertions -Sortierung verwendet, wenn Sie ein Element in einen bestimmten Index einfügen möchten. Alle bereitgestellten Methoden können zum Sortieren eines Arrays in absteigender oder aufsteigender Reihenfolge verwendet werden.