思路:这个原始数组有个性质,就是非递减,那么从前往后进行扫描时,当前元素应该小于等于下一个元素,但是在旋转数组中,一旦遇到当前元素大于下一个元素时,那么下一个元素就是最小值。这里注意旋转数组与原始数组相同的情况。
class Solution {
public:
int minNumberInRotateArray(vector<int> rotateArray) {
int len = rotateArray.size();
if(len==0) return 0;
for(int i=0;i<len-1;i++)
{
if(rotateArray[i]<=rotateArray[i+1])
continue;
else return rotateArray[i+1];
}
return rotateArray[0];
}
};