Ich programmiere gerade mit Delphi ein paar unterschiedliche Sortierverfahren. Ich bin zur Zeit noch beim ausprobieren, aber bei einem Verfahren komme ich einfach nicht weiter. Eigentlich ist es fertig, aber wenn ich es benutze, stürzt das programm immer ab. Hier der Quellcode:
Delphi-Quellcode:
procedure TForm1.Sortierverfahren4Click(Sender: TObject);
var
n: integer;
procedure Quicksort(links,rechts:integer);
var
el,er,grenze: integer;
hilfe:string;
begin
el := links; er:=rechts; grenze := strtoint(ListeSortiert.Items.Strings[links]);
repeat
while strtoint(ListeSortiert.Items.Strings[el])<grenze do el:=el+1;
while strtoint(ListeSortiert.Items.Strings[er])<grenze do er:=er-1;
if(el <> er) then begin
hilfe := ListeSortiert.Items.Strings[el];
ListeSortiert.Items.Strings[el] := ListeSortiert.Items.Strings[er];
ListeSortiert.Items.Strings[er] := hilfe;
end;
until el>er;
if (er > links) then QuickSort(links,er);
if (el < rechts) then QuickSort(el,rechts);
end;
Vielleicht kann mir jemand helfen. Die Dateien sind in einer Zip-Datei als Attachment hinzugefügt, falls jemand Interesse haben sollte den Fehler zu beheben.
Gruß
Helios