Sortieren benötigt immer 2 Grundoperationen:
Vergleichen (Compare) und
Vertauschen (Swap)
Versuche 2 Funktionen zu schreiben:
Delphi-Quellcode:
function CompareMyArray(a,b:integer):integer;
const
VERGLEICHINDEX = 0;
begin
if meinArray[VERGLEICHINDEX][a] > meinArray[VERGLEICHINDEX][b] then
result := 1
else if meinArray[VERGLEICHINDEX][a] > meinArray[VERGLEICHINDEX][b] then
result := -1
else
result := 0;
// Hinweis: mit Sign() geht es einfacher und eleganter
end;
procedure SwapMyArray(a,b:integer);
var i : integer;
begin
for i := 0 to obergrenze do
SwapInteger(meinArray[i][a], meinArray[i][b]);
end;
Damit kannst du nun beliebige Sortierverfahren ansetzen, die CompareXXXX() oder SwapXXXX() benützen.