Dieser Artikel bietet Ihnen eine Zusammenfassung (Code) der Implementierungsmethode des Sortieralgorithmus. Ich hoffe, dass er für Freunde hilfreich ist.
1. Einfügungssortierung: Die grundlegende Operation der Einfügungssortierung besteht darin, Daten in die sortierten geordneten Daten einzufügen, um neue geordnete Daten mit der Zahl plus eins zu erhalten Sortieren einer kleinen Datenmenge; behandeln Sie zuerst die erste als bereits sortiert, nehmen Sie dann die letzte heraus und fügen Sie sie jedes Mal vorne ein und sortieren Sie sie. 2. Blasensortierung: wiederholt besucht die zu sortierenden Elemente. Eine Sequenz, die zwei Elemente gleichzeitig vergleicht und sie vertauscht, wenn sie in der falschen Reihenfolge sind. Der Besuch des Arrays wird wiederholt, bis kein Austausch mehr erforderlich ist, was bedeutet, dass das Array sortiert wurde
def insert_sort(ilist): for i in range(len(ilist)): for j in range(i): if ilist[i] < ilist[j]: ilist.insert(j, ilist.pop(i)) break return ilist ilist = insert_sort([4,5,6,7,3,2,6,9,8]) print ilist
3. Schnelle Sortierung: Die zu sortierenden Daten werden durch einen Sortierdurchgang in zwei unabhängige Teile aufgeteilt , wo Alle Daten in einem Teil kleiner sind als alle Daten im anderen Teil, und dann diese Methode verwenden, um die beiden Teile der Daten schnell zu sortieren. Der gesamte Sortiervorgang kann rekursiv durchgeführt werden, sodass die gesamten Daten werden eine geordnete Sequenz
def bubble_sort(blist): count = len(blist) for i in range(0, count): for j in range(i + 1, count): if blist[i] > blist[j]: blist[i], blist[j] = blist[j], blist[i] return blist blist = bubble_sort([4,5,6,7,3,2,6,9,8]) print blist
4. Auswahlsortierung: Wählen Sie im ersten Durchgang den kleinsten Datensatz unter den zu sortierenden Datensätzen r1 ~ r[n] aus und tauschen Sie ihn im zweiten Durchgang aus Zu sortierende Datensätze r2 ~ Wählen Sie den kleinsten Datensatz aus r[n] aus und tauschen Sie ihn gegen r2 aus. Der i-te Durchgang erfasst r[i], die sortiert werden sollen ~ Wählen Sie den kleinsten Datensatz aus r[n] aus und tauschen Sie ihn gegen r[i] aus, sodass die geordnete Sequenz weiter wächst, bis die gesamte Sortierung abgeschlossen ist
def quick_sort(qlist): if qlist == []: return [] else: qfirst = qlist[0] qless = quick_sort([l for l in qlist[1:] if l < qfirst]) qmore = quick_sort([m for m in qlist[1:] if m >= qfirst]) return qless + [qfirst] + qmore qlist = quick_sort([4,5,6,7,3,2,6,9,8]) print qlist
5. Binäre Suche: Suche hauptsächlich durch Division durch 2;
def select_sort(slist): for i in range(len(slist)): x = i for j in range(i, len(slist)): if slist[j] < slist[x]: x = j slist[i], slist[x] = slist[x], slist[i] return slist slist = select_sort([4,5,6,7,3,2,6,9,8]) print slist
Das obige ist der detaillierte Inhalt vonZusammenfassung der Implementierungsmethoden von Sortieralgorithmen in Python (Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!