本题与leetcode 153基本一样,我的代码两个都可以用
void sortA(std::vector<int>&nums,int s,int t,int &n){
if(s==t){
if(s!=nums.size()-1&&nums[s]>nums[s+1])
{
n=s;
return;
}
}else
{
int m=(s+t)/2;
sortA(nums,s,m,n);
sortA(nums,m+1,t,n);
}
}
int findMin(std::vector<int>& nums) {
if(nums.size()==0)
return -1;
if(nums.size()==1)
return nums[0];
int c=-1;
sortA(nums,0,nums.size()-1,c);
return nums[c+1];
}