public class Cvicenie {
public static boolean jeUsporiadane(int[] p) {
if (p == null || p.length == 0)
return true;
for (int i = 0; i < p.length - 1; i++) {
if (p[i] > p[i+1])
return false;
}
return true;
}
public static int binarneHladajIndex(int[] p, int hodnota) {
if (p == null || p.length == 0)
return -1;
int odIdx = 0;
int poIdx = p.length - 1;
while (odIdx <= poIdx) {
int stredIdx = (odIdx + poIdx) / 2;
if (p[stredIdx] == hodnota)
return stredIdx;
if (hodnota < p[stredIdx]) {
poIdx = stredIdx - 1;
} else {
odIdx = stredIdx + 1;
}
}
return -1;
}
public static void main(String[] args) {
int[] p = new int[] {1, 2, 4, 7, 9, 11, 20, 35};
System.out.println(binarneHladajIndex(p, 27));
System.out.println(binarneHladajIndex(p, 35));
// int[] p = new int[] {1, 2, 3, 4, 5, 6};
// System.out.println(jeUsporiadane(p));
// int[] p2 = new int[] {1, 2, 3, 7, 5, 6};
// System.out.println(jeUsporiadane(p2));
}
}