还是贴上自己的蹩脚代码吧!!
class Solution {
public:
int findMin(vector<int>& nums) {
if(nums.empty())
return -;
int begin=,end=nums.size()-;
while(begin<end)
{
int mid=(begin+end)/;
if(mid==begin)
return nums[begin]<nums[end]?nums[begin]:nums[end];
if(nums[mid]>nums[begin])
{
if(nums[end]<=nums[begin])
begin=mid+;
else
return nums[begin];
}
else if(nums[mid]<nums[begin])
{
end=mid;//这个地*是改为end=mid-1,是无法得到正确结果的!!
}
else
{
begin++;
}
}
return nums[begin];
}
};