Ein generischer Quicksort in Scala

8

Ich habe kürzlich mit Scala herumgespielt und darüber nachgedacht, wie ich eine generische Version von Quicksort implementieren kann (nur um ein besseres Gefühl für die Sprache zu bekommen)

Ich habe mir sowas ausgedacht

%Vor%

Dies ist nicht so generisch, wie ich es wollte, da ich explizit angeben muss, wie man die Elemente anordnet, anstatt etwas wie

zu tun %Vor%

Wie kann ich dem Compiler mitteilen, dass T nur den Größer-als-Operator implementieren muss, damit er von dieser Funktion sortiert werden kann?

Grüße

    
raichoo 22.02.2010, 21:54
quelle

2 Antworten

14
%Vor%     
Schildmeijer 22.02.2010, 21:55
quelle
8

Seit Roger abgedeckt die Ordered case, lassen Sie mich Ordering :

abdecken %Vor%

Die Verwendung von Ordering hat zwei Hauptvorteile:

  1. Der T -Typ muss nicht als Ordered erstellt worden sein.
  2. Man kann leicht alternative Anordnungen bereitstellen.

Zum Beispiel auf Scala 2.8:

%Vor%     
Daniel C. Sobral 23.02.2010 12:00
quelle

Tags und Links