-2
Код ниже не может получить правильный ответ, но я не знаю, какая часть является неправильной. Его логика выглядит правильно, он не может запустить правильный ответОшибка двоичного кода поиска не найден
/*binary search*/
int binary_search(const vector<int> &a,int x) {
long left = 0;
int mid;
long right=a.size()-1;
//write your code here
while (a[left]<a[right]){
mid=a[left+(right-left)/2];
if (a[mid]==x){
return mid;
}
else if (a[mid]>x){
right=mid-1;
}
else{
left=mid+1;
}
}
return -1;
}
Большое вам спасибо. Я застрял в этом коде часами. Каждый раз, когда я проверял код, я предполагал, что это то, что я думал. Огромное спасибо!!! – Tina
Не забудьте отметить ответ, если он был полезен. Пожалуйста! –