如何在给定数组中执行二元搜索?
作者:InfoQ IT百科
- 2022 年 4 月 24 日
本文字数:339 字
阅读完需:约 1 分钟
二分查找的前提条件,要求数组必须是有序状态。
二分查找的前提条件,要求数组必须是有序状态。
下面是 Java 实现的数组二分查找算法:
public class BinarySearch {
public int binarySearch(int a,int[] arr){
int index = -1;
int head = 0;
int end = arr.length - 1;
int binary =(end + head)/2;
// 使用二分查找进行搜索
while(true){
if( a <arr[head] || a > arr[end]){
break;
}
// 判断是否已经查找到
if(arr[binary] == a){
index = binary;
break;
}
else{
if(arr[binary] > a){
end = binary - 1;
}
else{
head = binary + 1;
}
binary =( end + head)/2;
}
}
return index;
}
}
复制代码
划线
评论
复制
发布于: 刚刚阅读数: 3
InfoQ IT百科
关注
还未添加个人签名 2021.04.12 加入
还未添加个人简介
评论