Description:
题目大意:二分查找数组,找到返回其下标,找不到返回 -1
解题思路:
算法标签:二分查找
代码:
class Solution {
public:
int search(vector<int>& nums, int target) {
// 如果数组为空,返回 -1
if(nums.size() == 0)
return -1;
// 二分查找
int left = 0,right = nums.size() - 1;
while(left <= right) {
int mid = (left + right) >> 1;
if(nums[mid] == target)
return mid;
else if(nums[mid] < target) {
left = mid + 1;
}
else
right = mid - 1;
}
return -1;
}
};