LeetCode – Search in Rotated Sorted Array II (Java)

Follow up for "Search in Rotated Sorted Array": what if duplicates are allowed? Write a function to determine if a given target is in the array.

Java Solution

public boolean search(int[] nums, int target) {
    int left=0;
    int right=nums.length-1;
 
    while(left<=right){
        int mid = (left+right)/2;
        if(nums[mid]==target)
            return true;
 
        if(nums[left]<nums[mid]){
            if(nums[left]<=target&& target<nums[mid]){
                right=mid-1;
            }else{
                left=mid+1;
            }
        }else if(nums[left]>nums[mid]){
            if(nums[mid]<target&&target<=nums[right]){
                left=mid+1;
            }else{
                right=mid-1;
            }
        }else{
            left++;
        }    
    }
 
    return false;
}
Category >> Algorithms >> Interview  
If you want someone to read your code, please put the code inside <pre><code> and </code></pre> tags. For example:
<pre><code> 
String foo = "bar";
</code></pre>