Witam, napisałem kod QuickSorta, kompiluje się, jednak później wychodzi taki błąd:
Segmentation fault
Process returned 139 (0x8B) execution time : 0.018 s
Press ENTER to continue.
Gdy wkleiłem i uruchomiłem to: http://miroslawzelent.pl/wyklady/sortowanie-szybkie-quicksort-dziel-zwyciezaj.pdf (implementacja) to wszystko działało, a kody są prawie takie same (zmienione nazwy zmiennych). Co robię źle?
#include <iostream> void QuickSort(int* tab, int p, int q) { int piv = tab[(p+q)/2]; int i, j, temp; i = p; j = q; do { while(i<piv) i++; while(j>piv) j--; if(i<=j) { temp = tab[i]; tab[i] = tab[j]; tab[j] = temp; i++; j--; } } while(i<=j); if(j>p) QuickSort(tab, p, j); if(i<q) QuickSort(tab, i, q); } int main() { int *arr = new int[6]{13,66,-32,19,44,0}; QuickSort(arr, 0, 5); for(int i=0; i<6; i++) std::cout<<arr[i]<<std::endl; return 0; }