Własnie sobie piszę różne elementarne algorytmy i mam problem przy quicksorcie. Cholera siedze nad tym 15 minut i nie widzę błędu.
Mógłby go ktoś wskazać? Jeżeli macie jakieś dodatkowe uwagi co do implementacji to również byłbym wdzięczny.
void quick_sort(int tablica[],int l,int p)
{
int lk = l;
int pk = p;
int sr = (l+p)/2;
int tmp;
while(lk<=pk){
while(tablica[lk]<tablica[sr]){lk++;}
while(tablica[pk]>tablica[sr]){pk--;}
if(lk<=pk){tmp = tablica[lk];tablica[lk] = tablica[pk];tablica[pk]=tmp;lk++;pk--;}
}
if(l<pk){quick_sort(tablica,l,pk);}
if(lk<p){quick_sort(tablica,lk,p);}
}