Search in Rotated Sorted Array

<pre name="code" class="cpp">class Solution{
	public:
	int search(vector<int>& nums,int target){
		int first=0,end=nums.size();
		int mid=0;
		while(first<end){
			mid=(first+end)/2;
			if(nums[mid]==target)
			return mid;
			if(nums[mid]>=nums[first]){
				if(target>=nums[first]&&target<nums[mid]){
					end=mid;
				}
				else{
					first=mid+1;
				}
				
			}
			else{
				if(target>nums[mid]&&target<=nums[end-1]){
					first=mid+1;
				}
				else{
					end=mid;
				}
			}
			
		}
		return -1;
	}
};



            
原文地址:https://www.cnblogs.com/muyangshaonian/p/9650500.html