wie wärs mit einem
BUBBLESORT? Der Lerneffekt ist wesentlich höher...
Dort kann man auch, wenn man das > durch ein < austauscht, genau die umgekehrte Reihenfolge erreichen...
so habe ich eine Liste sortiert, wenn es nich unbedingt ultraschnell gehen muss:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
| Procedure TForm1.Sort; var zwischen: real; i, i2: integer; begin for i := 1 to n do begin for i2 := 1 to (n - 1) do begin if Liste[i2 - 1] > Liste[i2] then begin zwischen:= Liste[i2 - 1]; Liste[i2 - 1] := Liste[i2]; Liste[i2] := zwischen; end; end; end; end; |
Wobei du natürlich eine andere Liste hast und die Bariable "zwischen" einen anderen Typ hat. Hier wurden reals Sortiert. Und Liste ist ein eindimensionaler realarray
und wenn du dort das > durch ein < vertauschst, sollte es genau andersherum sortiert werden...
Edit:
n ist die Länge der Liste.