在旋转排序数组之后的数组中找到目标值的位置(很多遍 ,总是晕)
Posted 做扎实的PHP开发者
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在旋转排序数组之后的数组中找到目标值的位置(很多遍 ,总是晕)相关的知识,希望对你有一定的参考价值。
33. Search in Rotated Sorted Array在旋转排序数组中找目标值的位置 int search(vector<int>& nums, int target) { int len=nums.size(); int low=0,high=len-1; while(low<=high){ int mid=(low+high)/2; if(nums[mid]==target){ return mid; } //mid在旋转点左侧 if(nums[mid]<nums[low]){ if(nums[mid]<target&&target<=nums[high]){ low=mid+1; }else{ high=mid-1; } } //mid在旋转点右侧 else if(nums[mid]>nums[high]){ if(nums[mid]>target&&target>=nums[low]){ high=mid-1; }else{ low=mid+1; } } else{ if(nums[mid]<target){ low=mid+1; }else{ high=mid-1; } } } return -1; }
以上是关于在旋转排序数组之后的数组中找到目标值的位置(很多遍 ,总是晕)的主要内容,如果未能解决你的问题,请参考以下文章