public int search (int[] nums, int target) {
int left = 0;//设置左指针为初始位置
int right = nums.length - 1;//设置右指针为末尾位置
while(left <= right){//循环条件
int mid = left + (right - left) / 2;//中间值为
if(nums[mid] == target){//判断中间值是否等于目标值
return mid;
}
if(nums[mid] >= nums[left]){
if(nums[mid] > target&&target>=nums[left]){
right = mid - 1;
}
else{
left = mid + 1;
}
}
else{
if(nums[mid]<target&& target <= nums[right]){//目标值大于中间值且小于最右边的值
left = mid + 1;
}
else{
right = mid - 1;
}
}
}
return -1;
}