Sortowanie stogowe - znajdz blad w kodzie

Otrzymałeś(aś) rozwiązanie do zamieszczonego zadania? - podziękuj autorowi rozwiązania! Kliknij
Robakks
Czasem tu bywam
Czasem tu bywam
Posty: 141
Rejestracja: 30 wrz 2012, 20:36
Podziękowania: 2 razy
Otrzymane podziękowania: 10 razy
Płeć:

Sortowanie stogowe - znajdz blad w kodzie

Post autor: Robakks » 17 sie 2017, 23:58

Kod: Zaznacz cały

void Przesiewanie(int l,int p, int *A)
{
    int x;
    int i,j;
    x=A[l];
    i=l;
    j=2*i+1;
    while(j<=p)
    {
         if(j<p && A[j]<A[j+1])
             j++;
         if(x<A[j])
         {
               A[i]=A[j];
                 i=j;
                 j=2*i+1;
         }
    }
    A[i]=x;
}

void BudujStog(int n,int *A)
{
    for(int i=(n-2)/2;i>=0;i--)
        Przesiewanie(i,n-1,A);
}

void SortowanieStogowe(int n,int *A)
{
    BudujStog(n,A);
    int x;
    for(int i=n-1;i>=1;i--)
    {
         x=A[0];
         A[0]=A[i];
          A[i]=x;
          Przesiewanie(0,i-1,A);
    }
}

Kiedys jeden koles dal ten kod do poprawienia i ciekaw jestem czy znajdziecie blad w kodzie