leetcode中等33搜索旋转排序数组
Posted qq_40707462
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode中等33搜索旋转排序数组相关的知识,希望对你有一定的参考价值。
思路:二分
如果 mid<right ,则右半边有序,判断target是否在右半边,否则在左半边寻找;另一部分同理
时间复杂度为 O(log n)
class Solution
public int search(int[] nums, int target)
int len=nums.length;
int left=0,right=len-1;
while(left<=right)
int mid=(left+right)/2;
if(nums[mid]==target) return mid;
else if(nums[mid]<nums[right])//右半边有序
if(nums[mid]<target && target<=nums[right]) left=mid+1;//t在右半边
else right=mid-1;
else//左半边有序
if(nums[left]<=target && target<nums[mid]) right=mid-1;
else left=mid+1;
return -1;
以上是关于leetcode中等33搜索旋转排序数组的主要内容,如果未能解决你的问题,请参考以下文章