Seite 1 von 1
Hilfe Analyse Programmcode heapsort
Verfasst: Mittwoch 26. August 2020, 16:23
von Dilo44
Hallo zusammen, ich muss eine Hausarbeit über heapsort schreiben und Pythoncode diesbezüglich erklären. Kann mir jemand die einzelnen Schritte erklären von dem Programmcode, welches Befehl welche Auswirkung hat. Vielen Dank vorab.
from heapq import heappop, heappush
def heap_sort(array):
heap = []
for element in array:
heappush(heap, element)
ordered = []
# While we have elements left in the heap
while heap:
ordered.append(heappop(heap))
return ordered
array = [13, 21, 15, 5, 26, 4, 17, 18, 24, 2]
print(heap_sort(array))
Re: Hilfe Analyse Programmcode heapsort
Verfasst: Mittwoch 26. August 2020, 17:32
von Sirius3
Das ist doch Deine Hausarbeit. Wie bist Du denn an den Python-Code gekommen?
Wie gut kannst Du Python und hast Du Dir schon die Dokumentation zu heapq gelesen?
Was ist Dir am Code konkret nicht klar?
Re: Hilfe Analyse Programmcode heapsort
Verfasst: Mittwoch 26. August 2020, 18:56
von Dilo44
Hallole, ehrlich gesagt habe ich es aus dem Internet kopiert und selber nur getestet. Mit Python kenne ich mich nicht gut aus. Es geht darum welche Wirkung jede einzelne Zeile hat beziehungsweise welche Befehle welche Auswirkung haben. Danke vorab vielen Dank
Re: Hilfe Analyse Programmcode heapsort
Verfasst: Mittwoch 26. August 2020, 19:15
von Sirius3
Warum Python? Ist das eine Vorgabe? Erster Einstiegspunkt ist Wikipedia, dort werden solche Algorithmen normalerweise gut und richtig erklärt.
Jetzt habe ich Deine Quelle auch gefunden und dort wird doch auch schon ausführlichst das Programm erklärt.
Re: Hilfe Analyse Programmcode heapsort
Verfasst: Mittwoch 26. August 2020, 19:21
von __deets__
Mit anderen Worten: dein Dozent will, das du verstehst, was du selbst programmieren solltest. Irgendwo in dieser Erwartungshaltung ist die Antwort auf dein Problem versteckt, aber ich komm nicht drauf.
Re: Hilfe Analyse Programmcode heapsort
Verfasst: Mittwoch 26. August 2020, 19:44
von Dilo44
Und das Problem ist ich verstehe es leider nicht :/ was heapsort ist weiß ich aber nicht umgesetzt und nicht gerade Python ...
Re: Hilfe Analyse Programmcode heapsort
Verfasst: Mittwoch 26. August 2020, 21:01
von __blackjack__
@Dilo44: Was verstehst Du denn nicht? „Heapsort“ wird wie schon geschrieben wurde beispielsweise bei Wikipedia erklärt, aber auch in vielen anderen Quellen. Und für Python gibt es ein Tutorial in der Python-Dokumentation. An welcher konkreten Stelle hakt es also beim verstehen das durch diese Quellen nicht abgedeckt wird?
Re: Hilfe Analyse Programmcode heapsort
Verfasst: Donnerstag 27. August 2020, 06:27
von Jankie
Was die einzelnen Funktionen machen kannst du auch in der
heapq Dokumentation nachschauen.
Re: Hilfe Analyse Programmcode heapsort
Verfasst: Donnerstag 27. August 2020, 07:36
von sparrow
@Dilo44: Ähm... um das mal in einen anderen, verständlicheren Kontext zu setzen:
In einer Küche wäre dein Code die Hilfskraft, die das Geschirr in den Spüler räumt und sich hinterher freut, wie sauber es geworden ist.
Ich bin mir aber ziemlich sicher, dass du für deine Hausarbeit erklären musst, wie der Geschirrspüler funktioniert.