Java 二分查找算法实现详解
二分查找是一种常见的搜索算法,用于在有序的数据集中查找指定元素。以下是 Java 中的二分查找实现:
public static int binarySearch(int[] arr, int key) {
int low = 0;
int high = arr.length - 1;
while (low <= high) {
int mid = (low + high) / 2;
if (arr[mid] == key) {
return mid;
} else if (arr[mid] < key) {
low = mid + 1;
} else {
high = mid - 1;
}
}
return -1;
}
这个方法接受一个有序数组和一个目标元素作为输入,并返回目标元素在数组中的索引。它使用两个指针(low 和 high)来表示查找范围的上限和下限,并在每次循环中计算中间索引(mid)。如果找到了目标元素,则返回其索引。如果中间元素小于目标元素,则将下限指针移到 mid+1 的位置。如果中间元素大于目标元素,则将上限指针移到 mid-1 的位置。如果在整个数组中没有找到目标元素,则返回-1。
原文地址: https://www.cveoy.top/t/topic/nGIM 著作权归作者所有。请勿转载和采集!