Beim Sortieren gibt es 2 Grundoperationen:
a.)
Vergleichen zweier Elemente
b.)
Vertauschen zweier Elemente
Dann wäre es doch logisch, wenn es in deinem Sourcecode zwei Methoden gibt:
Delphi-Quellcode:
function TWortListe.Compare(a,b:integer):integer;
begin
Inc(compare_counter);
... // hier der Code zum Vergleichen
end;
Procedure TWortListe.Swap(a,b:integer);
begin
Inc(swap_counter);
... // hier der Code zum Vertauschen
end;
Und dann ist ganz klar, dass nur noch Compare() und Swap() aufgerufen werden, anstatt diese Operationen
direkt im QSort Algo aufzurufen.