二分查找33. 搜索旋转排序数组
Posted ocpc
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二分查找33. 搜索旋转排序数组相关的知识,希望对你有一定的参考价值。
题目:
解答:
1 class Solution { 2 public: 3 int search(vector<int>& nums, int target) 4 { 5 int l = 0; 6 int r = nums.size() -1; 7 8 while (l <= r) 9 { 10 int mid = (l + r) >> 1; 11 12 if (target == nums[mid]) 13 { 14 return mid; 15 } 16 17 if (nums[l] <= nums[mid]) 18 { 19 if (nums[l] <= target && target < nums[mid]) 20 r = mid-1; 21 else 22 l = mid+1; 23 } 24 else 25 { 26 if (nums[mid] < target && target <= nums[r]) 27 l = mid +1; 28 else 29 r = mid -1; 30 } 31 } 32 return -1; 33 } 34 };
以上是关于二分查找33. 搜索旋转排序数组的主要内容,如果未能解决你的问题,请参考以下文章