Quicksort em ordem descrescente

E ae galera, blza?

To tentando implementar um quicksort que ordena em ordem descrescente. Eu fiz algumas mudanças mas não sei se é suficiente . A mudança feita foi na linha 13, onde troquei o <= por >=.
Deem sugestoes ae!

[code]
public void quicksort(int p, int q, int array[]){
if (p < q){
int x = particao(p, q, array);
quicksort(p, x - 1, array);
quicksort(x + 1, q, array);
}
}

public int particao&#40;int p, int q, int array&#91;&#93;&#41;&#123;
    int j = p - 1;
    int aux = array&#91;q&#93;;
    for &#40;int i = p; i &lt;= q; i++&#41;&#123;
        if &#40;array&#91;i&#93; &gt;= aux&#41;;
        troca&#40;array, i, ++j&#41;;
    &#125;
    return j;
&#125;

public void troca&#40;int array&#91;&#93;, int i, int j&#41;&#123;
    int aux = array&#91;i&#93;;
    array&#91;i&#93; = array&#91;j&#93;;
    array&#91;j&#93; = aux;
&#125;[/code]

Valeu[/code]

Ninguem?