Seite 1 von 1

Sortieren in Python

Verfasst: Montag 5. Juni 2017, 10:39
von niete123
Ich soll ein Algorithmus in Python aufstellen für die Sortierung einer Liste für Megesort absteigend und Hearpsort aufsteigend. Hab veruscht den Anfang zu implementieren.

Code: Alles auswählen

def sortMerge(a):
    print('Parameter a:')
    print(a)
    # hier soll Ihre Implementierung des Mergesort - Verfahrens stehen.
    result = a  # durch das Ergebnis Ihrer Implementierung ersetzen
    return result

def sortHeapDesc(a):
    print('Parameter a:')
    print(a)
    # hier soll Ihre Implementierung von absteigendem HeapSort stehen.
    result = a  # durch das Ergebnis Ihrer Implementierung ersetzen
    return result

# Hier ist ein Testfall:
liste = [3, 2, 1, 9, 17, 4, -1, 0]
mergeResult = sortMerge(liste)
heapResult = sortHeapDesc(liste)

print('berechnet:')
print(mergeResult)
print(heapResult)

# Das Ergebnis sollte folgende Liste sein:
# [-1, 0, 1, 2, 3, 4, 9, 17]
# [17, 9, 4, 3, 2, 1, 0, -1]


def heapsort (A):
buildHeap (A) last =  len(A) -1
while (last >= 1):  
#  Wurzel mit letztem  Blatt tauschen
chg (A,last,0)
# letzten Knoten aus Baum entfernen
last = last  -1
# Heapeigenschaft wieder herstellen
heapify (A,0,last)
Könnt ihr mir beim Vollständigen helfen.

Re: Sortieren in PYthon

Verfasst: Montag 5. Juni 2017, 11:03
von Sirius3
@niete123: wo brauchst Du denn Hilfe? Also an welcher Stelle hast Du Schwierigkeiten, die Algorithmen umzusetzen? Bisher sehe ich nur die Aufgabenstellung.