Einzelnen Beitrag anzeigen

Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#1

(String)List als Rückgabetyp vermeiden - wie denn nu?

  Alt 4. Jul 2009, 12:57
Moin!

Im Zuge meiner Prüfungsvorbereitung implementier ich grad allerlei Soriteralgorithmen... Und bin jetze bei Mergesort mal wieder auf das Problem gestoßen, dass ich eigentlich eine Liste als Rückgabetyp brauche - das gehört ja aber zu den Dingen, die man hier neben gotos u.Ä. als böse eingetrichtert bekommt

Der Code ist in etwa so:
Delphi-Quellcode:
class method MergeSort.MergeSort<T>(aList: List<T>; aComparison: TComparison<T>): List<T>;
var
    Left, Right: List<T>;
begin
    if aList.Count >= 1 then begin
       Left := aList.GetRange(0, aList.Count / 2);
       Right := aList.GetRange(aList.Count / 2, aList.Count / 2);
       Result := Merge<T>(MergeSort<T>(Left, aComparison), MergeSort<T>(Right, aComparison), aComparison);
    end;
end;
So, die Frage ist jetzt: wie macht mans denn nun richtig (bei der Merge-Funktion ergibt sich ja selbiges Problem)?
  Mit Zitat antworten Zitat