159.Find Minimum in Rotated Sorted Array

public class Solution {
/**
 * @param nums: a rotated sorted array
 * @return: the minimum number in the array
 */
public int findMin(int[] nums) {
    // write your code here
    int length = nums.length;
    int target = nums[length - 1];
    int start = 0;
    int end = length - 1;
    while (start + 1 < end) {
        int mid = start + (end - start) / 2;
        if (nums[mid] < target) end = mid;
        else start = mid;
    }
    if (nums[start] < nums[end]) return nums[start];
    else return nums[end];
}
}

你可能感兴趣的:(159.Find Minimum in Rotated Sorted Array)