用Java代码实现一个二分查找
时间: 2023-02-20 08:04:01 浏览: 75
这是一个用Java代码实现二分查找的示例:
```
public class BinarySearch {
public static int binarySearch(int[] arr, int x) {
int left = 0;
int right = arr.length - 1;
while (left <= right) {
int mid = (left + right) / 2;
if (arr[mid] == x) {
return mid;
} else if (arr[mid] < x) {
left = mid + 1;
} else {
right = mid - 1;
}
}
return -1;
}
public static void main(String[] args) {
int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9};
int x = 5;
int result = binarySearch(arr, x);
if (result == -1) {
System.out.println("元素不在数组中");
} else {
System.out.println("元素在数组中的索引为: " + result);
}
}
}
```
在这段代码中,我们定义了一个二分查找的函数 `binarySearch`,它接受一个整型数组和一个整数作为参数。函数使用循环来实现二分查找,在每次循环中,通过计算数组的中间索引值来缩小查找范围。如果找到元素,则返回元素的索引;如果未找到,则返回 -1。
阅读全文