public class _Test_08 {
public static void main(String[] args) {
int[]
array = {
1,
2,
0,
1,
1};
System.out.println(findMinNum(
array));
}
private static Integer findMinNum(
int[]
array) {
if (
array == null) {
return null;
}
int left =
0;
int right =
array.length -
1;
int mid =
0;
while(
array[left] >=
array[right]){
if (right - left <=
1) {
mid = right;
break;
}
mid = (left + right)/
2;
if (
array[left] ==
array[right] &&
array[left] ==
array[mid]) {
if (
array[left +
1]!=
array[right -
1]) {
mid =
array[left +
1] <
array[right -
1] ?
array[left +
1] :
array[right -
1];
break;
}
else {
left++;
right--;
}
}
else{
if (
array[mid] >=
array[left]) {
left = mid;
}
else{
right = mid;
}
}
}
return array[mid];
}
}