33. 搜索旋转排序数组/

版权声明:只要梦想一天,只要梦想存在一天,就可以改变自己的处境。 https://blog.csdn.net/dongyanwen6036/article/details/85399405
33. 搜索旋转排序数组
class Solution {
public:
	int Bsearch(vector<int>& nums, int target,int low,int high)
	{
		
		while (low <= high)
		{
			 

			int mid = (low + high) / 2;
			if (nums[mid] == target)return mid;
 
			if (nums[low] <= nums[mid])
			{
				if (target<nums[mid] &&target>=nums[low])
					high = mid - 1;
				else 
					low = mid + 1;
			}
			else
			{
				if (target>nums[mid] && target<nums[low])
					low = mid + 1; 
				else
					high = mid - 1;
			}
		}		 
		return -1;
	}
  int search(vector<int>& nums, int target) {
	 return  Bsearch( nums, target,0,nums.size()-1);
   }
};

猜你喜欢

转载自blog.csdn.net/dongyanwen6036/article/details/85399405