auswahl sortieren python

Eine Python-Auswahlsortierung teilt eine Liste in zwei kleine Listen auf. Eine Liste repräsentiert die sortierten Elemente. Die andere Liste enthält die unsortierten Elemente. Die Auswahlsortierung findet die kleinsten oder höchsten Werte in jeder Iteration und verschiebt diese Werte in die geordnete Liste.

Das Sortieren von Listen ist eine gängige Operation in einer Reihe von Programmen.

Betrachten Sie dieses Beispiel: Ein Lehrer möchte mehr daruber erfahren, wie gut seine Schuler in ihrem letzten Test abgeschnitten haben. Ein Lehrer möchte vielleicht die Schuler sortieren’ Punkte in auf- und absteigender Reihenfolge. Auf diese Weise können sie leicht herausfinden, was die höchsten und niedrigsten Testergebnisse waren.

Geben Sie die Auswahl ein. Die Auswahlsortierung ist ein Algorithmus, den Sie verwenden können, um eine Liste entweder in aufsteigender oder absteigender Reihenfolge zu sortieren.

In diesem Handbuch werden wir besprechen, wie Sie ein Auswahlsortierprogramm in Python schreiben. Wir werden in diesem Handbuch ein Beispiel durchgehen, damit Sie die Besonderheiten der Auswahlsortierung kennenlernen.

Was ist eine Python-Auswahlsortierung?

Eine Python-Auswahlsortierung findet wiederholt das minimale Element in einer Liste und verschiebt dieses Element an ein bestimmtes Ende der Liste. Die Sortierung wird fortgesetzt, bis das Array der Reihe nach sortiert ist. Sie können auch eine Auswahlsortierung anweisen, um das maximale Element zu finden. Beide Ansätze sortieren eine Liste.

Auswahlsortierungen gehen davon aus, dass das erste Element in einer Liste der kleinste Wert ist. Die Sortierung vergleicht dann diesen Wert mit dem zweiten Element. Wenn das zweite Element kleiner als der Minimalwert ist, wird das zweite Element zum Minimalwert.

Dieser Vorgang wird wiederholt, bis das letzte Element der Liste erreicht ist. Sobald dieses Element erreicht ist, wird der Mindestwert an den Anfang der unsortierten Liste gesetzt.

81 % der Teilnehmer gaben an, dass sie sich nach dem Besuch eines Bootcamps hinsichtlich ihrer Berufsaussichten im Tech-Bereich sicherer fuhlten. Lassen Sie sich noch heute in ein Bootcamp einweisen.

Der durchschnittliche Bootcamp-Absolvent verbrachte weniger als sechs Monate mit dem Karrierewechsel, vom Beginn eines Bootcamps bis zur Suche nach seinem ersten Job.

Es gibt keinen besseren Weg um mehr uber Auswahlsortierungen zu erfahren, als ein Beispiel durchzugehen. Lassen Sie uns eine Liste der Schulernoten in aufsteigender Reihenfolge durchgehen und sortieren. Betrachten Sie diese unsortierte Liste:

73626169

Wir beginnen damit, den ersten Wert unserer Liste als Minimum zu bezeichnen . Jede Iteration der Auswahlsortierung findet das kleinste Element und verschiebt es in das sortierte Unterarray.

Das Sortieren des minimalen Elements ist eine Option. Eine Auswahlsortierung funktioniert, wenn Sie das maximale Element sortieren. Aber wir’ Verwenden Sie in diesem Beispiel wieder das minimale Element.

Als nächstes vergleichen wir den minimalen Wert mit dem zweiten Element. Wenn dieses Element kleiner als das minimale ist, sollte das zweite Element der minimale Wert werden.

Wir werden 73 und 62 vergleichen. 73 ist größer als 62, was bedeutet, dass unser neuer Mindestwert 62 ist. Unsere Liste wird dann alle anderen Zahlen in unserer Liste durchgehen:

  • Ist 61 gr√∂√üer als 6 2 (unser Mindestwert)? Nein, also vertausche die Zahlen. Aus Minimum wird 61.
  • Ist 69 gr√∂√üer als 61 (unser Mindestwert)? Ja, also tu nichts. Mindestaufenthalt 61.

Unsere Liste sieht genauso aus:

73626169

Wenn Sie das . erreichen Ende der Liste können Sie den Mindestwert an den Anfang der Liste verschieben:

61 (unser Mindestwert) wurde an den Anfang der Liste verschoben und jeder andere Wert wurde um eins nach oben verschoben. Wir wiederholen diesen Vorgang, bis alle Elemente sortiert sind.

Jede Iteration unserer Liste gibt Folgendes zuruck:

  1. 73, 62, 61, 69
  2. 61, 73, 62, 69
  3. 61, 62, 73, 69
  4. 61, 62, 69, 73

Wenn die Auswahlsortierung alle Elemente in der Liste uberpruft hat, wird die Sortierung beendet.

Das sortierte Unterarray und das unsortierte Unterarray sind fur uns beide unsichtbar. Unser Algorithmus sortiert ein Array fur uns und verfolgt den unsortierten Teil des Arrays.

So fuhren Sie eine Auswahlsortierung in Python durch

Sie sind jetzt mit der Theorie vertraut: Nun getan! Es ist Zeit fur die große Herausforderung. Wir implementieren den Auswahlsortieralgorithmus in Python. Schreiben wir ein Programm, das ein Python-Array aufnimmt und in aufsteigender Reihenfolge sortiert.

Definieren einer Sortierfunktion

Wir beginnen mit der Definition einer Python-Funktion, die unsere Auswahlsortierung durchfuhrt :

Wir haben mit der Methode Python len() begonnen, um die Länge unserer Liste zu ermitteln. Wir Verwenden Sie dies dann, um eine Python for -Schleife zu initiieren, die jedes Element in unserer Liste durchläuft.

Fur jede Iteration in der Schleife legen wir den Wert Minimum als erstes Element in unserer Liste fest. Dies haben wir in unserer vorherigen exemplarischen Vorgehensweise getan. Wenn Sie einen Mindestwert festgelegt haben, beginnt eine weitere for-Schleife, die jedes Element in unserer Liste durchläuft.

Fur jedes Element in der Liste pruft unser Algorithmus, ob der Mindestwert größer als . ist dieser Artikel. Wenn ja, passiert nichts; andernfalls wird der Minimalwert zum Element, das das Programm liest.

Beim Durchlaufen jedes Elements in unserer Liste verschiebt unser Algorithmus den Minimalwert an den Anfang der Liste. Dann läuft unser Programm weiter, bis die oberste for-Schleife endet. Dies liegt daran, dass Auswahlsortierungen so oft ausgefuhrt werden, wie eine Liste lang ist.

Aufrufen der Sortierfunktion

Sie haben vielleicht bemerkt, dass nichts passiert, wenn wir unser Programm ausfuhren. Dies liegt daran, dass wir unserem Code noch nicht mitgeteilt haben, welche Werte verwendet werden sollen. Fugen Sie den folgenden Code am Ende Ihres Programms außerhalb der sortList-Funktion hinzu:

"Karriere-Karma trat in mein Leben ein, als ich es am dringendsten brauchte und half mir schnell bei einem Bootcamp. Zwei Monate nach meinem Abschluss fand ich mein Traumjob, der meinen Werten und Zielen im Leben entspricht!"

Venus, Software Engineer bei Rockbot

Wenn wir unser Programm ausfuhren , wird Folgendes zuruckgegeben:

Unsere Liste wurde sortiert. Klopfen Sie sich auf den Rucken; Sie haben es geschafft!

Selektionssortierungen k√∂nnen verwendet werden, um eine Liste in absteigender Reihenfolge zu sortieren. Wenn Sie eine Liste auf diese Weise sortieren m√∂chten, k√∂nnen Sie die "wenn‚" -Anweisung in der Auswahl sortieren Sie wie folgt:

Wir haben das Kleiner-als-Zeichen in ein Größer-als-Zeichen geändert. Dadurch wird unsere Liste in absteigender Reihenfolge sortiert, da der Mindestwert auf den höchsten Wert in der Liste gesetzt wird. Technisch gesehen wird unser minimaler Wert zu einem maximalen Wert.

Wann sollten Sie eine Auswahlsortierung verwenden?

Auswahlsortierungen wie Blasensortierungen werden am besten fur kleinere Listen verwendet. Dies liegt daran, dass der Algorithmus nicht ’ t so effizient wie andere, wie z. B. eine Einfugungssortierung, wenn sie in größeren Listen verwendet wird.

Eine Auswahlsortierung ist eine gute Methode, um zu lernen, wenn Sie gerade erst mit Sortieralgorithmen beginnen. Andere Sortierungen können schwierig zu beherrschen sein, aber ein klares Verständnis von Auswahlsortierungen kann Ihnen helfen, verschiedene Arten von Listen zu verstehen.

Was ist die Komplexität fur die Auswahlsortierung?

Die Auswahlsortierung hat eine Zeitkomplexität von O( n2). Dies bedeutet, dass die Komplexität des Algorithmus exponentiell ansteigt, je nachdem, wie viele Elemente sich in der Liste befinden.

O(n2) ist die Worst-Case-, Durchschnitts- und Best-Case-Komplexität dafur Algorithmus. Wenn Sie mehr erfahren möchten e Informationen zum Sortieren von Komplexitäten finden Sie in unserem Leitfaden zur Big O Notation.

Schlussfolgerung

Auswahl Sortierungen sind eine wichtige Methode zum Sortieren von Daten. Auswahlsortierungen lesen jedes Element in einer Liste durch und verschieben bei jeder Iteration das kleinste Element an den Anfang der Liste. Dies geschieht, bis jedes Element in der Liste gelesen wurde.

Auswahlsortierungen werden außerhalb des Unterrichts nicht häufig verwendet, da es effizientere Algorithmen gibt. Abgesehen davon sind sie ein gutes Sprungbrett zum Erlernen anderer Sortierarten, wie z. B. Einfugungs- oder Zusammenfuhrungssortierungen.

Bist du daran interessiert, mehr uber Python zu erfahren? Lesen Sie unseren vollständigen Leitfaden zum Erlernen von Python fur Expertenrat, der Ihnen hilft, Ihr Wissen zu erweitern.