public class BinarySearch {
public static void main(String[] args) {
int[] values = { 11,12, 15, 18, 21, 23, 25,28,31,33 };
int size = values.length;
int first = 0;
int last = size - 1;
int key = 18;
System.out.println("Size is " + size);
int mid = first + (last - first) / 2;
while (values[0] < values[size - 1])
{
if (key == values[mid]) {
System.out.println("Number is found at" + mid + " location");
break;
} else if (key < values[mid]) {
last = mid - 1;
} else if (key > values[mid]) {
first = mid + 1;
}
mid = first + (last - first) / 2;
}
}
}
public static void main(String[] args) {
int[] values = { 11,12, 15, 18, 21, 23, 25,28,31,33 };
int size = values.length;
int first = 0;
int last = size - 1;
int key = 18;
System.out.println("Size is " + size);
int mid = first + (last - first) / 2;
while (values[0] < values[size - 1])
{
if (key == values[mid]) {
System.out.println("Number is found at" + mid + " location");
break;
} else if (key < values[mid]) {
last = mid - 1;
} else if (key > values[mid]) {
first = mid + 1;
}
mid = first + (last - first) / 2;
}
}
}