public class Solution {
    public int minNumberInRotateArray(int [] a) {
        int len = a.length;
        if(len == 0)
            return 0;
        int l = 0;
        int r = len - 1;
        while(l < r) {
            int mid = (l + r) >> 1;
            if(a[mid] > a[r]) {
                l = mid + 1;
            } else if(a[mid] < a[r]) {
                r = mid;
            } else {
                r --;
            }

        }
        return a[l];
    }
}