![]() |
MinSortstabil!??
hallo Leute..
ich hab kleines Problem mit der Hausaufgabe.. wir sollen MinSort Sortiverfahren so schreiben, dass es "Stabil" ist.. aber soweit ich weiß, geht das doch gar nicht oder doch!? :? so sieht normale MinSort bei uns aus.. als Hinweis hat der Lehrer uns das noch weiter gegeben: "der KnotenMitKleinstenInhalt wird aus der Liste gelöscht und der Inhalt (kleinsterInhalt) wird hinter,vor das letzte Teilelement hinzugefügt"
Delphi-Quellcode:
//-------- MinSort (public) --------------------------------------------------
procedure TSortierListe.MinSort; var KnotenMitKleinstemWert, ersterKnoten : TKnoten; i : Integer; begin if Self.Laenge > 1 then begin Self.zumAnfang; ersterKnoten := Self.liefereAktuellenKnoten; for i := 1 to Self.Laenge do begin KnotenMitKleinstemWert := Self.findeKnotenMitKleinstemInhalt(ersterKnoten); vertausche(ersterKnoten,KnotenMitKleinstemWert); ersterKnoten := ersterKnoten.Nachfolger; end; end; end; danke für die Hilfe vorraus :o [edit=alcaeus]Delphi-Tags gesetzt. In Zukunft bitte selbst machen ;) Mfg, alcaeus[/edit] |
Re: MinSortstabil!??
Hallo,
MinSort (selectionSort) stabil -> HeapSort anbei ein Link: ![]() auch noch ein guter Link für Sortieralgos: ![]() und da wäre noch dieser: ![]() Selber nachdenken und machen macht schlau ;o) Grüße Klaus |
Re: MinSortstabil!??
Hi,
um es einfach schon mal vorweg zu nehmen, natürlich geht es (sonst wäre die Aufgabe so schlecht wie der Code). Zum Code muss ich echt sagen, dass Lehrer (hier mal ganz pauschal gesagt) echt nicht wissen was Codestil ist (gehe mal davon aus, dass der vom Lehrer formatiert wurde). Viel schöner geht das auch, wenn man ein wenig nach Konvention formatiert:
Delphi-Quellcode:
By the way, du findest einen Button mit dem Titel Delphi-Code in dem Fenster in dem du Nachrichten schreibst, damit kannst du dann Delphi Code auch als solchen markieren. Wie gesagt, die Formatierung ist halt etwas unglücklich und macht den Code schwerer lesbar.
procedure TSortierListe.MinSort;
var KnotenMitKleinstemWert, ersterKnoten : TKnoten; i : Integer; begin if Self.Laenge > 1 then begin Self.zumAnfang; ersterKnoten := Self.liefereAktuellenKnoten; for i := 1 to Self.Laenge do begin KnotenMitKleinstemWert := Self.findeKnotenMitKleinstemInhalt(ersterKnoten); vertausche(ersterKnoten,KnotenMitKleinstemWert); ersterKnoten := ersterKnoten.Nachfolger; end; end; end; Zurück zum eigentlichen : Zitat:
Falls du da nicht von selbst drauf kommst, ist das kein Problem, dann sag einfach was du dir schon überlegt hast und wo du nicht weiter kommst. Ich fasse das posten deines Codes einfach mal nicht als Aufforderung einer Lösung auf (wäre wohl die falsche Stelle ;-)), sonst müsste ich ja schließlich davon ausgehen, dass du möchtest dass dir jmd. die HA macht (was den Forensregeln widersprechen würde). Aber wie gesagt, frag einfach weiter nach (und sag was du schon gemacht hast) und dir wird sicher geholfen werden. Gruß Der Unwissende |
Re: MinSortstabil!??
nene, ich hab das Programm nur reingepostet,
weil ich den Ansicht habe, dass die meisten hier anderen Delphicode benutzen als wir. hm.. nun ja.. ich werds natürlich weiter probieren, die Aufgabe zu lösen. Danke für die Antworten & freu mich aber auf weiteren Antworten ;) |
Re: MinSortstabil!??
Zitat:
|
Re: MinSortstabil!??
An welcher stelle muss ich im algorithmus die Änderungen vornehmen? Meines erachtens nach sind das drei weitere Befehle, die ich schon geschreiben habe! Aber ich weiß nicht so genau, wo ich die einfügen muss. Mein Programm stürtzt immer ab -.-
|
Re: MinSortstabil!??
Zitat:
Dir ist schon klar, dass wir nicht wissen wie deine geschriebenen Zeilen aussehen, wo du sie schon eingefügt hast,...?! Sag doch einfach erstmal was genau stabil bedeutet, was du also glaubst du machen musst und dann erklärst du einfach mal wo du was eingefügt hast (wo es dann zum Fehler kommt). Dann kann man dir sicher helfen! |
Re: MinSortstabil!??
Wo stürzt es denn ab, welche Zeile in Deinem Code?
Welche Fehlermeldung bekommst Du? Grüße Klaus |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:12 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz