Java 查找小于某个值的最大值 - 二分查找方法
在 Java 中,如果你想找到小于某个值的最大值,你可以使用标准库中的 Arrays.binarySearch() 方法结合二分查找来实现。下面是一个代码示例:
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
int[] array = {1, 3, 5, 7, 9};
int target = 6;
// 将数组排序
Arrays.sort(array);
// 使用二分查找找到小于目标值的最大值
int index = Arrays.binarySearch(array, target);
if (index < 0) {
index = -(index + 1) - 1;
}
// 输出结果
if (index >= 0) {
System.out.println('小于目标值的最大值为: ' + array[index]);
} else {
System.out.println('没有找到小于目标值的最大值');
}
}
}
在这个示例代码中,我们首先使用 Arrays.sort() 方法对数组进行排序,然后利用 Arrays.binarySearch() 方法执行二分查找,找到小于目标值 target 的最大值的索引。如果找到,我们输出该值;否则,输出一个提示信息表示没有找到小于目标值的最大值。
二分查找是一种高效的算法,尤其适用于已排序的数组。通过这种方法,我们可以快速找到小于某个值的最大值,并提高代码效率。
原文地址: https://www.cveoy.top/t/topic/qmCb 著作权归作者所有。请勿转载和采集!