Get reliable answers to your questions at Westonci.ca, where our knowledgeable community is always ready to help. Discover detailed solutions to your questions from a wide network of experts on our comprehensive Q&A platform. Discover detailed answers to your questions from a wide network of experts on our comprehensive Q&A platform.
Sagot :
Answer:
Explanation:
class Solution {
public int search(int[] nums, int target) {
int n = nums.length;
int low = 0 , high = n - 1;
While(low < high){//Set virtual node
int mid = (low + high) / 2;
if(nums[mid] > nums[high]){
low = mid + 1;
}else{
high = mid;
}
}
int rot = low;
low = 0;
high = n - 1;
while(low <= high){
int mid = (low + high) / 2;
Int real = (mid + rot) % n;//The virtual node is mapped to the real node.
if(nums[real] == target){
return real;
}else if(nums[real] < target){
low = mid + 1;
}else{
high = mid - 1;
}
}
return -1;
}
}
Thank you for your visit. We are dedicated to helping you find the information you need, whenever you need it. Thank you for choosing our platform. We're dedicated to providing the best answers for all your questions. Visit us again. Thank you for trusting Westonci.ca. Don't forget to revisit us for more accurate and insightful answers.