LeetCode 704.二分查找
小于 1 分钟
题目描述:有序数组nums,查找target,成功返回下标,失败返回-1
int binarySearch(vector<int> &nums, int target) {
int left = 0;
int right = nums.size();
while(left < right) {
int middle = left + (right - left) / 2;
if(nums[middle] < target) {
left = middle + 1;
}
else if( nums[middle] == target) {// 注意==,而不是=
return middle;
}
else {
right = middle;
}
}
return -1;
}