//数组的搜索算法 二分/折半查找
class BinarySerach
{
public static void main(String[] args)
{
int[] arr ={1,2,3,4,5,6,7,8,9,10};
int index = BinarySerach(arr,8);
System.out.println(index);
}
//折半查找
static int BinarySerach(int[] arr ,int key)
{
int low = 0;
int high = arr.length-1;
while (low <= high)
{
int mid = (low+high)/2;
int midVal=arr[mid];
if (midVal > key)//猜大了
{
high= mid-1;
}else if (midVal < key)
{
low = mid + 1;
}else{
return mid;
}
}
return -1;
}
}
4.11 数组的搜索算法 二分/折半查找
最新推荐文章于 2021-11-28 23:55:48 发布