用Java写一个二分查找法
时间: 2023-04-10 17:03:22 浏览: 48
好的,下面是用 Java 实现二分查找法的代码。
首先,我们需要确定数据是有序的。如果数据是无序的,那么在执行二分查找之前需要先将数据排序。
然后,我们可以使用以下代码来实现二分查找:
```
public static int binarySearch(int[] array, int target) {
int low = 0;
int high = array.length - 1;
while (low <= high) {
int mid = low + (high - low) / 2;
if (array[mid] == target) {
return mid;
} else if (array[mid] < target) {
low = mid + 1;
} else {
high = mid - 1;
}
}
return -1;
}
```
在上面的代码中,我们定义了一个名为 `binarySearch` 的函数,它接受两个参数:一个整型数组 `array` 和一个整型目标值 `target`。该函数使用二分查找算法在数组中查找目标值,如果找到目标值,则返回目标值在数组中的位置(数组下标);如果没有找到,则返回 -1。
在函数中,我们使用变量 `low` 和 `high` 表示当前查找区间的最小下标和最大下标。我们每次取出数组的中间值,并根据中间值与目标值的大小关系来决定是缩小查找区间还是扩大查找区间。如果目标值比中间值小,则说明目标值在数组的