class Solution {
public int minArray(int[] numbers) {
int num1=numbers[0];
for(int i :numbers){
if(i>=num1) //判断数组是否一直递增
num1=i;
else return i;//数组非递增则说明出现最小元素,返回
}
return numbers[0];//数组一直递增,则最小元素为数组首元素
}
}
解题技巧,该数组为旋转数组,则在最小值的前面数字一定都比它大,遍历数组,找出第一个变小的数字即为最小值。
注意如果数组数字遍历完后全为递增,那么最小值即是数组第一个元素