import java.util.Arrays;
public class SJJG {
public static void main(String [] args){
// 二分查找的前提是,数据集有序
int[] a = {1,3,5,6,7,9,10,11,13,14,16,19,20,107};
System.out.println(binarySearch(a, 14));
System.out.println(Arrays.binarySearch(a, 14));// 返回元素索引
}
public static int binarySearch(int [] num , int des){
int start = 0;
int end = num.length -1;
while(start <= end){
int mid = (start + end) / 2 ;
if(num[mid] == des){
return num[mid];
}else if(num[mid] < des){
start = mid + 1;
}else if(num[mid] > des){
end = mid -1;
}
}
return -1;
}
}
二分查找
最新推荐文章于 2024-11-25 00:03:42 发布
本文介绍了一种在有序数组中进行高效搜索的方法——二分查找算法,并提供了完整的Java实现代码。该算法通过不断缩小搜索范围来提高查找效率。
4244

被折叠的 条评论
为什么被折叠?



