/**81. Search in Rotated Sorted Array II
* @param nums
* @param target
* @return 接上题,数组中有重复数字
*/
public boolean search2(
int[] nums,
int target) {
int s =
0, e = nums.length-
1;
while(s <= e) {
int m = (s+e)/
2;
if (nums[m] == target) {
return true;
}
else if (nums[m] < nums[e]) {
if (target > nums[m] && target <= nums[e]) {
s = m+
1;
}
else {
e = m-
1;
}
}
else if (nums[m] > nums[e]){
if (target < nums[m] && target >= nums[s]) {
e = m-
1;
}
else {
s = m+
1;
}
}
else {
e--;
}
}
return false;
}
转载请注明原文地址: https://ju.6miu.com/read-4947.html