public class HalfSearch {
public static int
halfSearch(int a[], int x) {
int mid, left, right;
left =
0;
right = a.length - 1;
mid = (left + right) / 2;
while (a[mid]
!= x) {
if (x > a[mid]) {
left = mid + 1;
}
else if
(x < a[mid]) {
right = mid - 1;
}
mid=(left+right)/2;
}
return mid;
}
public static void main(String[] args) {
int a[] = { 1, 2, 3, 4, 5,
6,7,8,9,10 };
for (int i = 0; i < a.length; i++)
{
System.out.print(a[i] + "
");
}
System.out.println();
int s = 10;
int index =
halfSearch(a, s);
System.out.println(s + "在数组中的下标是 " + index);
}
}