leetcode--Find Minimum in Rotated Sorted Array

来源:互联网 发布:苹果电脑影视制作软件 编辑:程序博客网 时间:2024/06/11 15:28

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).

Find the minimum element.

You may assume no duplicate exists in the array.

public class Solution {    public int findMin(int[] nums) {        if(nums.length==0) return 0;          int start = 0;          int end = nums.length-1;          int mid = (start+end)/2;          int min = 1<<100;          while(start<end){              if(nums[mid]>nums[end]){                  start = mid+1;                  mid = (start+end)/2;              }else if(nums[mid]<nums[end]){                  end = mid;                  mid = (start+end)/2;              }else{                               for(int i=start;i<=end;i++){                      if(nums[i]<min) min = nums[i];                  }                  return min;              }          }                return nums[start];      }}

0 0
原创粉丝点击