[leetcode] Find Minimum in Rotated Sorted Array

 

思路:像题目中的例子,则结果返回数组元素0。和普通的二分查找不同的是,该二分查找的循环条件为 (l < r) && (num[l] > num[r])

 

Java代码如下:

    public int findMin(int[] num) {
        int l = 0, r = num.length-1;
        while((l < r) && (num[l] > num[r])){
            int m = (l + r)/2;
            if (num[m] > num[r])
                l = m + 1;
            else
                r = m;
        }
        return num[l];
    }

 

posted @ 2015-08-08 18:04  lasclocker  阅读(97)  评论(0编辑  收藏  举报