logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak zoptymalizować sortowanie bąbelkowe w C bez dodatkowych zmiennych?

05 Kwi 2008 19:05 1977 1
REKLAMA
  • #1 4996927
    Konto nie istnieje
    Konto nie istnieje  
  • REKLAMA
  • Pomocny post
    #2 4998422
    jakubw
    Poziom 18  
    Posty: 134
    Pomógł: 35
    Ocena: 6
    Z tego co wiem to algorytm sortowania bombelkowego jest już ogólnie znany i dostępny.
    Fakt faktem jest jego kilka wersji uwzględniających np. to o czym mówicz, czyli fakt posortowania już już w połowie przelotu pętli.
    Ogólnie przy małej ilości elementów jest on porównywalny z innymi algorytmami ale przy wiekszej odpada od ręki.

    Nie wnikając w Twój kod podrzucam pierwszy lepszy z netu ( może Ci się przyda )

    
    #include <stdio.h>
    #include <conio.h>
    void main()
    {
        int tab[10];
        int i,j,z;
        //wypełnienie tablicy
        for(i=0;i<10;i++)
        {
            printf("Podaj wartość tab[%d]: ",i);
            scanf("%d",&tab[i]);
        }
        //sortowanie
        for(i=0;i<9;i++)
            for(j=i+1;j<10;j++)
                if(tab[i]>tab[j])
                {
                    z=tab[i];
                    tab[i]=tab[j];
                    tab[j]=z;
                }
        //wyświetlenie wyniku
        for(i=0;i<10;i++)
            printf("%d ",tab[i]);
        getch();
    }
    
    
    


    Pozdrawiam
REKLAMA