public class twofenchazhao {
public static void main(String[] args) {
int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int a = 6;
int index = binarySearchForIndex( arr, a );
System.out.println( index );
}
private static int binarySearchForIndex(int[] arr, int a) {
int min = 0;//定义查找范围
int max = arr.length - 1;
while (min < max) {
int mid = (min + max) / 2;//计算出中间位置
if (arr[mid] > a) {//表示查找的元素在左边
max = mid - 1;
} else if (arr[mid] < a) {//mid指向的元素在中间位置的右边
min = mid + 1;
} else {
return mid;
}
}
return -1;
}
}
数组的二分查找实现代码
最新推荐文章于 2023-05-04 15:40:36 发布