Java中的二进制搜索。
以下是必需的程序。
示例
public class Tester {
public static int binarySearch(int arr[], int first, int last, int element){
int mid = (first + last)/2;
while( first <= last ){
if ( arr[mid] < element ){
first = mid + 1;
}else if ( arr[mid] == element ){
return mid;
}else{
last = mid - 1;
}
mid = (first + last)/2;
}
return -1;
}
public static void main(String a[]) {
int[] array = { 10, 20, 30, 40, 50, 60 };
int element = 50;
int last=array.length-1;
int index = binarySearch(array,0,last,element);
if (index != -1) {
System.out.println(element + " present at index: " + index);
} else {
System.out.println(element + " 不存在。");
}
}
}输出结果
50 is present at index: 4