题目链接:https://leetcode-cn.com/problems/xuan-zhuan-shu-zu-de-zui-xiao-shu-zi-lcof/
题目如下:
class Solution {
public:
int minArray(vector<int>& numbers) {
//二分法,因为题为递增排序(从小到大),且可以很明显的两分
int low=0,high=numbers.size()-1,mid;
while(low<high){
mid=(low+high)>>1;
if(numbers[mid]>numbers[high]) low=mid+1;
else if(numbers[mid]<numbers[high]) high=mid;//这里的low和high是存放数值的可能区间,无关二分法的内部细节
else if(numbers[mid]==numbers[high]) high=high-1;//防止存在相同元素的干扰
}
return numbers[low];
}
};