Mirki, chciałem napisać quicksorta posługując się algorytmem Hoare. Kod jest niemalże przepisany z algorytmy jednak nie działa i nie mam pojęcia dlaczego. Zauważyłem tylko, że w 40 linijce gdy zamiast "quickSort( a, p, q);" napiszę "quickSort( a, p, q-1);" to program otwiera się bez problemu jednak nie spełnia on swojej roli (nie sortuje).
Mirki, chciałem napisać quicksorta posługując się algorytmem Hoare. Kod jest niemalże przepisany z algorytmy jednak nie działa i nie mam pojęcia dlaczego. Zauważyłem tylko, że w 40 linijce gdy zamiast "quickSort( a, p, q);" napiszę "quickSort( a, p, q-1);" to program otwiera się bez problemu jednak nie spełnia on swojej roli (nie sortuje).
Kod: http://pastebin.com/Zjmqyn0e
repeat ... until
i
do ... while
:s
Jak chcesz na while, to po prostu zmień 55, 56:
do j--; while(a[j] <= pivot);
do i++; while(a[i] >= pivot);
na:
do j--; while(a[j] > pivot);
do i++; while(a[i] < pivot);
i działa jak natura chciała