2017-05-01 11 views
-1

Kann mir jemand helfen herauszufinden, wie ich meine QuickSort in absteigender Reihenfolge machen kann?Ein QuickSort in absteigender Reihenfolge?

Ich weiß, dass Sie einige Zeichen ändern sollen (oder alle?), Aber ich kann es einfach nicht richtig machen.

+0

Welche Sprache ist das? C#? Sie sollten ein Tag dafür hinzufügen. – Carpetsmoker

+0

Dies ist die Java-Sprache. –

Antwort

0

Nehmen Sie folgende Änderungen:

while(riders.get(left).getAmount() >= pivot && left < right){ // changed from: riders.get(left).getAmount() <= pivot 
    left++; 
} 
while(riders.get(right).getAmount() < pivot){ // changed from: riders.get(right).getAmount() > pivot 
    right--; 
} 

Hier ist die left Seite von der pivot werden Werte halten größer als der Wert des Dreh - in der ursprünglichen Sortierverfahren wurde die Seiten Werte, die weniger als der Wert des Dreh. Ähnlich wird die right Seite von pivot Werte halten, die kleiner als der Pivot-Wert sind.

Verwandte Themen