Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Sortowanie malejące - quicksort

Ostatnio zmodyfikowano 2014-01-06 11:40
Autor Wiadomość
ratini
Temat założony przez niniejszego użytkownika
Sortowanie malejące - quicksort
» 2014-01-06 11:07:48
Może trochę źle nazwałem temat, ale chodzi mi o to, żeby liczby sortowały się malejąco, a nie rosnąco. Nie wiem jak to przerobić. Oto jest kod który chce poprawić:

C/C++
void quicksort( int tablica[], int x, int y )
{
    int i, j, t, v;
    i = x;
    j = y;
    v = tablica[ x ];
    do
    {
        while( v > tablica[ i ] ) i++;
       
        while( v < tablica[ j ] ) j--;
       
        if( i <= j )
        {
            t = tablica[ i ];
            tablica[ i ] = tablica[ j ];
            tablica[ j ] = t;
            i++;
            j--;
        }
    }
    while( i <= j );
   
    if( x < j ) quicksort( tablica, x, j );
   
    if( i < y ) quicksort( tablica, i, y );
   
}
P-101338
alixir
» 2014-01-06 11:34:56
Wystarczy mała zmiana.

Zastąp to:

C/C++
while( v > tablica[ i ] ) i++;

while( v < tablica[ j ] ) j--;

tym:
C/C++
while( v < tablica[ i ] ) i++;

while( v > tablica[ j ] ) j--;

P-101344
ratini
Temat założony przez niniejszego użytkownika
» 2014-01-06 11:40:37
Wielkie dzięki :)
P-101345
« 1 »
  Strona 1 z 1