Insertionsart in C ++

Insertionsart in C ++
Insertions -Sortierung ist ein grundlegender Organisationsalgorithmus oder -ansatz, der auf die gleiche Weise funktioniert, wie Sie Kartenplätze in Ihren Handflächen anordnen können. Das Sortiment ist in zwei Teile unterteilt: eine, die bestellt wird und das andere nicht ist. Elemente aus dem ungeordneten Segment werden in der richtigen Reihenfolge im organisierten Fragment ausgewiesen und befinden. Die Insertion -Sortierung wird die beiden aufeinanderfolgenden Werte miteinander vergleichen, und diese Methodik ist effektiver als die Sortierung von Blasen und Auswahl, jedoch nicht so schnell wie schnelle Sortierart oder Zusammenführungssortierung.

Beginnen wir mit dem Start der Shell -Anwendung in Ubuntu 20.04 System mit Strg+Alt+T. Erstellen Sie nach dem Start eine C ++ - Datei in Ihrem Home -Ordner über die im Bild angegebene Anweisung "Touch". Nennen Sie die C ++ - Datei mit der Erweiterung "CC". Öffnen Sie danach Ihre Datei in einem integrierten Redakteur von Ubuntu 20.04 System (i.e. Gnu Nano, Text oder Vim).

Beispiel 1:

Beginnen wir mit dem allerersten Beispiel, um die Einfügungssortierung zu verwenden, um ein zufälliges ungeordnetes Array in aufsteigender Reihenfolge der Zahlen zu sortieren. Wir haben unseren Code mit der Aufnahme der „Bits/STDC) begonnen++.H ”Standardbibliothek. Dann haben wir den Standard "Namespace" von C ++ mit dem kurzen Wort "Verwenden" und "std" hinzugefügt. Die Funktion "sort ()" verwendet das Array "A" und seine Größe "N", um das ungeordnete zufällige Array in Sortierter über die Insertions -Sort -Technik zu sortieren.

Wir haben eine ganzzahlige Variable "Schlüssel" deklariert und die "für" -Schloop ist im Gange. Bis die Schleife mit der Größe eines Arrays interagiert, wird der Wert bei jedem Index „I“ von Array „A“ in der Variablen „Schlüssel“ gespeichert, die gespeichert ist.

Initialisieren Sie eine andere Variable "j" mit dem vorherigen Wert von Index "I" i i.e. "J = i -1". Hier kommt die while -Schleife. Während der vorherige Index „j“ größer oder gleich 0 ist und der Wert am Index „J“ größer ist als der Wert bei Variablen „Schlüssel“ i.e. Der Wert bei Index "i" wird der Wert bei Index "J" weiter hinzufügen, um "J+1" zu indexieren, was eigentlich 'I "ist. Zusammen mit dem wird der Index „J“ um 1 i verringern.e. Der vorherige "J" wird "J".

Nach dem Ende der while -Schleife wird der Wert bei "J+1" mit dem Wert "Schlüssel" zugewiesen. ich.e. bei "Ich". Um es klarer zu machen, sagen Sie, wenn i = 1 dann j = 0 ist. Wenn der Wert bei "J" größer als "Schlüssel" ist, werden wir den Wert mit "J" mit dem nächsten Wert in Folge austauschen.

Diese Funktion wird von der Funktion main () ausgeführt, indem das Array und seine spezifische Größe in den Parametern übergeben werden. Die "für" -Schloop wird verwendet, um die Array-Werte von Index 0 zum letzten Index "N-1" eines Arrays zu iterieren. Bei jeder Iteration wird jeder Wert auf der Shell unter Verwendung des spezifischen Index eines Arrays für eine bestimmte Iteration über die Cout -Anweisung angezeigt. Die letzte Cout -Anweisung wird verwendet, um das Zeilenende nach der Anzeige des gesamten Arrays „A“ auf die Shell zu setzen.

Die Ausführung dieses Code startet mit der main () -Methode. Wir haben ein Array "A" des Ganzzahl -Typs mit einigen zufälligen Zahlenwerten initialisiert. Dieses Array ist noch nicht sortiert. Wir erhalten die Größe eines Arrays mit der Variablen „N“ und wenden die Funktion der Größe () auf Array „A“ an.

Das Cout -Objekt wird verwendet, um den Benutzer mitzuteilen, dass das Programm das ursprüngliche unsortierte Array auf Ihrem Bildschirm anzeigt. Die Funktion „Show“ wird aufgerufen, indem das Array „A“ und die Größe „N“ übergeben wird, um das zufällig geordnete Array anzuzeigen. Die nächste Cout -Anweisung wird verwendet, um Sie mitzuteilen, dass das Programm das sortierte Array auf der Schale durch die Verwendung der Einfügungssortierung anzeigen wird.

Das "sort ()" wird durch Übergeben eines zufälligen Arrays "A" und seiner Größe aufgerufen. Die Funktion "sort () sortiert das Array und die Funktion show () zeigt das aktualisierte sortierte Array„ A “auf dem Shell -Bildschirm unseres Linux -Terminals an. Der Gesamtcode ist jetzt hier abgeschlossen.

Nach der Zusammenstellung unseres Code haben wir keine Fehler. Wir haben unseren Code über die "ausgeführt"./A.OUT ”Anweisungen unten gezeigt. Das unsortierte Array wurde angezeigt und dann ist das sortierte Array in einer aufsteigenden Reihenfolge über die Einfügungssortierung.

Beispiel 2:

Schauen wir uns ein weiteres Beispiel für die Sortierung der Insertion an. In diesem Beispiel werden wir keine benutzerdefinierten Sortierfunktionen verwenden, um die Einfügungssortierung auszuführen. Wir werden nur die Funktion main () im Code verwenden, um sie auszuführen. Wir öffnen also dieselbe Codedatei und aktualisieren den Code. Fügen Sie die C ++ - Standardeingangs- und Ausgabestream -Bibliothek mit dem Schlüsselwort "#include" hinzu. Der "Standard -Namespace" wird mit dem Schlüsselwort "Verwenden" deklariert.

Wir starten die Haupt () -Funktion des Ganzzahl -Typs und initialisieren ein Ganzzahlarray „A“ von Größe 10 mit den 10 numerischen Werten. Diese Elemente eines Arrays „A“ werden zufällig unabhängig von der Reihenfolge platziert. Die Cout -Anweisung wird verwendet, um anzugeben, dass wir die Liste anzeigen werden, bevor wir sie sortieren. Danach verwenden wir die „für“ -Schloop. Bei jeder Iteration der Schleife „für“ wird jeder gleiche Indexwert aus dem Array "A" über die Anweisung "Cout" auf der Shell angezeigt. Nach dieser „für“ -Schloop verwenden wir eine andere „für“ -Schloop.

Diese "für" -Schloop wird von "k = 0" bis "k = 10" initialisiert. Während sich die Schleife von 0 bis 10. Index von Array "A" iteriert, weisen wir den Wert bei Index „K“ von Array „A“ weiterhin der neuen Integer -Variablen „Temp“ zu "k" von Array "A" weiter, weiter. Außerdem finden wir den Vorgänger "J" des Wertes "K" mit dem "K-1" heraus. Die Schleife "Während" ist hier, um zu prüfen, ob der Vorgängerindex "J" größer als 0 ist und der Wert bei der Variablen "Temperatur" geringer oder gleich dem Wert des Vorgängers "J" von Array "A" ist.

Wenn diese Bedingung erfüllt, wird der Wert des Vorgängers dem nächsten "J" -Peditoror i zugewiesen.e. "J+1". Dabei verringern wir den Vorgängerindex I weiter.e. sich in die rückwärts gerichtete Richtung bewegen. Nach dem Ende der WHOS -Schleife weisen wir den Wert der „Temperatur“ dem nächsten von "J" -Pubergänger zu. Nachdem die "für" -Schloop endet, zeigen wir das sortierte Array "A" an. Dafür verwenden wir die Anweisung "Cout" in der Schleife "für". Der Code ist hier abgeschlossen und ist zur Verwendung bereit.

Wir haben die Codedatei "Einfügung" zusammengestellt.CC ”erfolgreich und führte die Datei mit der“ aus./A.Out “Anweisung. Das ungeortierte Zufallsarray wird zuerst angezeigt. Danach wird das sortierte Array durch die Einfügungssortierung am Ende gemäß der folgenden Ausgabe angezeigt.

Abschluss

In diesem Artikel geht es um die Verwendung der Einfügungssortierung, um ein zufälliges Array in einem C ++ - Programm zu sortieren. Wir haben die konventionelle Art der Sortierung des Arrays mit der Insertion -Sortierung innerhalb der ersten Beispiele i besprochen.e. Verwendung der Sorte, Anzeige und der Main () -Treiberfunktion. Danach verwendeten wir die neue Methode, um die Einfügungssortierung in einer einzelnen Treiber -Main () -Funktion durchzuführen.