class Demo1{
public static void main(String[] args) {
int[] arr = {1,3,6,8,9,12,45};
System.out.println(binarySearch(arr,45,0,arr.length - 1));
}
/**
* 用二分法查找
* @param arr 一个有序数组
* @return
*/
public static String binarySearch(int[] arr,int findValue,int start, int end){
int mid = (start + end)/2;
if(start > end){
return "该数组不含该元素!";
}
if(findValue == arr[mid]){
return mid + "---" + arr[mid];
}
if(findValue > arr[mid]){
return binarySearch(arr,findValue,mid + 1,end);
}
if(findValue < arr[mid]){
return binarySearch(arr,findValue,0,mid - 1);
}
return "";
}
}
二分查找
最新推荐文章于 2022-02-16 14:31:27 发布