package 排序算法.二分查找;
public class binarySearch2 {
//通过迭代的思想实现二分查找算法
public static void main(String[] args) {
int[] array = {0,12,-5,3,8,4,2,-7,1};
int index = BinarySearch(array, 8,0,array.length - 1);
System.out.println("指定元素在数组中的下标为:"+index);
}
public static int BinarySearch(int[] array,int item,int low,int high){
//递归的出口
if(low >= high){
return -1;
}
int mid = (low+high)/2;
int guess = array[mid];
if (guess == item){
return mid;
}else if(guess > item){ //说明猜大了,应该往左边去找
return BinarySearch(array, item, low, mid-1);
}else{//说明猜小了,应该往右边去找
return BinarySearch(array, item, mid + 1, high);
}
}
}
二分查找算法
于 2021-12-14 13:30:29 首次发布