Search in Rotated Sorted Array

Posted 大数据最好

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Search in Rotated Sorted Array相关的知识,希望对你有一定的参考价值。

问题描述:

Suppose a sorted array is rotated at some pivot unknown to you beforehand.

(i.e., 0 1 2 4 5 6 7 might become 4 5 6 7 0 1 2).

You are given a target value to search. If found in the array return its index, otherwise return -1.

You may assume no duplicate exists in the array.



实现代码:

public class Solution 
   public static int search(int[] nums, int target) 
		int index=0;
	    for(int i=0;i<nums.length-1;i++)
	    	if(nums[i] > nums[i+1])
	    		index = i+1;
	    		break;
	    	
	    
	    int left=0,right=nums.length-1;
	    if(target > nums[right])
	    	right=index-1;
	    else if(target < nums[right])
	    	left=index;
	    else if(index!=0 && target==nums[right])
	    	return right;
	    
	    index=(left+right)/2;
	    while(left <= right)
	    	System.out.println("000000");
	    	if(target < nums[index])
	    		right=index-1;
	    	else if(target > nums[index])
	    		left=index+1;
	    	else
	    		return index;
	    	
	    	index=(left+right)/2;
	    	
	    
		return -1;
    


以上是关于Search in Rotated Sorted Array的主要内容,如果未能解决你的问题,请参考以下文章