HI, мне нужна помощь с этой функцией im writing for hw. он не работает, даже если он отлично работает с массивами вместо векторов. может ли кто-нибудь помочь? Заранее спасибо :].Быстрая сортировка с векторами странные ошибки
void quick2 (vector <int> & qlist2, int left, int right) {
int i = left, j = right;
int middle = qlist2[qlist2.size()/2];
if (j - i < 1) {
return;
}
while (i <= j) {
while (qlist2[i] < middle) {
i++;
}
while (qlist2[j] > middle) {
j--;
}
if (i <= j) {
swap (qlist2[i], qlist2[j]);
i++;
j--;
}
}
if (left < j)
quick2 (qlist2, left, j);
if (i < right)
quick2 (qlist2, i, right);
}
"его не работает" Как это не работает? –
j хиты -1 во втором цикле 'while' – CNoobie