public int search (int[] nums, int target) {
// write code here
if (nums.length == 0) {
return -1;
}
int l = 0;
int r = nums.length;
int mid = 0;
while (l <= r) {
mid = (l + r) / 2;
if (nums[mid] < target) {
l = mid + 1;
} else if (nums[mid] > target){
r = mid - 1;
} else {
while (mid > 0 && nums[mid] == nums[mid - 1]) {
mid--;
}
return mid;
}
}
return -1;
}
京公网安备 11010502036488号