33. Search in Rotated Sorted Arr

2016-12-15  本文已影响0人  夜皇雪
public class Solution {
    public int search(int[] nums, int target) {
        int start=0,end=nums.length-1;
        while(start<end){
           int mid=(end-start)/2+start;
           if(target==nums[mid]) return mid;
           if(nums[mid]>nums[end]){
               if(target<nums[mid]&&target>=nums[start]) end=mid-1;
               else start=mid+1;
           }else{
               if(target>nums[mid]&&target<=nums[end]) start=mid+1;
               else end=mid-1;
           }
        }
        return nums[start]==target?start:-1;
    }
}
上一篇 下一篇

猜你喜欢

热点阅读