Conclusion for Binary Search
Methods:
two main methods:
left + 1 < right: used for searching the position between ice and fire
while(left + 1 < right){
int mid = left + (right - left) /2;
if(arr[mid] == target) return target;
if(arr[mid] < target){
left = mid;
}else{
right = mid;
}
}
if(arr[left] == target) return left;
if(arr[right] == target) return right;
return -1;
2. left <= right : used for search the target.
while(left <= right){
int mid = left + (right - left) /2;
if(arr[mid] == target) return target;
if(arr[mid] < target){
left = mid + 1;
}else{
right = mid - 1;
}
}
return -1;
Last updated
Was this helpful?