您的位置:首页 > 编程语言 > Java开发

【LeetCode-153】Find Minimum in Rotated Sorted Array

2016-04-06 09:26 411 查看
这道题的思想很简单,就是二分查找,只不过对二分查找稍微改变下,看了代码相信你就一定恍然大明白了

public class FindMinimuminRotatedSortedArray {

int result = Integer.MAX_VALUE;
public int findMin(int[] nums) {
binarySearch(nums, 0, nums.length - 1);
return result;
}

public void binarySearch(int[] nums,int left,int right){
if(left > right){
return;
}
if(nums[left] < nums[right]){
if(nums[left] < result){
result = nums[left];
}
return;
}
else{
int mid = left + (right - left) / 2;
if(nums[mid] < result){
result = nums[mid];
}

binarySearch(nums, left, mid - 1);
binarySearch(nums, mid + 1, right);
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息