public class MyClass {
static int binarySearch(int[] array, int element, int low, int high) {
while (low <= high) {
int mid = low + (high - low) / 2;
if (array[mid] == element)
return mid;
if (array[mid] < element)
low = mid + 1;
else
high = mid - 1;
}
return -1;
}
public static void main(String args[]) {
int[] array = { 3, 4, 6, 8, 9, 10, 12, 20, 27, 30, 31};
int number_to_find = 12;
int index = binarySearch(array, number_to_find, 0, array.length);
if (index == -1)
System.out.println("Not found");
else
System.out.println("Found at index: " + index);
}
}
/*
run:
Found at index: 6
*/