Heim >Backend-Entwicklung >Python-Tutorial >Teilen Sie ein Beispiel-Tutorial zur Implementierung der Auswahlsortierung in Python

Teilen Sie ein Beispiel-Tutorial zur Implementierung der Auswahlsortierung in Python

零下一度
零下一度Original
2017-06-19 15:35:441343Durchsuche

Die

-Auswahlmethode kann im Vergleich zur Blasenmethode auch als Sortieralgorithmus angesehen werden. Ihr Ausgangspunkt ist die „Auswahl“ des besten Werts des -Arrays ist ausgewählt und ersetzt die vorherigen Elemente. Wählen Sie dann weiterhin den höchsten Wert der verbleibenden Elemente aus und wiederholen Sie den Vorgang. Persönlich denke ich, dass die Bedeutung der Auswahlsortierung nicht in der Sortierung selbst liegt, sondern in der Methode der Auswahl und Ersetzung, die bei manchen Problemen sehr hilfreich ist.

Auswahlsortierung:

Auswahlsortierung ist ein einfacher und intuitiver Sortieralgorithmus. So funktioniert es. Suchen Sie zunächst das kleinste (große) Element in der unsortierten Sequenz und speichern Sie es am Anfang der sortierten Sequenz. Suchen Sie dann weiterhin das kleinste (große) Element aus den verbleibenden unsortierten Elementen und fügen Sie es dann am Ende der sortierten Sequenz ein sortierte Reihenfolge. Und so weiter, bis alle Elemente sortiert sind. Der Hauptvorteil der Auswahlsortierung betrifft die Datenbewegung. Befindet sich ein Element an der richtigen Endposition, wird es nicht verschoben. Jedes Mal, wenn die Auswahlsortierung ein Elementpaar vertauscht, wird mindestens eines davon an seine endgültige Position verschoben, sodass das Sortieren einer Liste mit n Elementen höchstens n-1 Vertauschungen erfordert. Unter allen Sortiermethoden, die zum Verschieben von Elementen ausschließlich auf Austausch basieren, ist die Auswahlsortierung eine sehr gute Methode.

Python Implementierung:

 # selection_sort.py
 def selection_sort(arr):
   count = len(arr)
   for i in range(count-1):  # 交换 n-1 次
     min = i
     # 找最小数
     for j in range(i, count):
       if arr[min] > arr[j]:
         min = j
     arr[min], arr[i] = arr[i], arr[min]  # 交换
   return arr
 
 my_list = [6, 23, 2, 54, 12, 6, 8, 100]
 print(selection_sort(my_list))

Das obige ist der detaillierte Inhalt vonTeilen Sie ein Beispiel-Tutorial zur Implementierung der Auswahlsortierung in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn