leetcode--Find Minimum 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).

Find the minimum element.

You may assume no duplicate exists in the array.

[java]  view plain  copy
  1. public class Solution {  
  2.     public int findMin(int[] nums) {  
  3.         if(nums.length==0return 0;    
  4.         int start = 0;    
  5.         int end = nums.length-1;    
  6.         int mid = (start+end)/2;    
  7.         int min = 1<<100;    
  8.         while(start<end){    
  9.             if(nums[mid]>nums[end]){    
  10.                 start = mid+1;    
  11.                 mid = (start+end)/2;    
  12.             }else if(nums[mid]<nums[end]){    
  13.                 end = mid;    
  14.                 mid = (start+end)/2;    
  15.             }else{                 
  16.                 for(int i=start;i<=end;i++){    
  17.                     if(nums[i]<min) min = nums[i];    
  18.                 }    
  19.                 return min;    
  20.             }    
  21.         }          
  22.         return nums[start];    
  23.     }  
  24. }  

原文链接http://blog.csdn.net/crazy__chen/article/details/46573247

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值