```java
```package bilishangxueang;
import java.util.Arrays;
/**
* 二分法查找(折半查找)
* @author Administrator
*为什么(low<high)少了=就输出就不对
*/
public class Testerfenfa {
public static void main(String[] args) {
int[] arr={1,3,4,6,40,65,66};
Arrays.sort(arr);
System.out.println(Arrays.toString(arr));
System.out.println(myChaZhao(arr, 1));
}
public static int myChaZhao(int[] arr,int value){
int low=0;
int high= arr.length-1;
while(low<high){
int mid=(low+high)/2;
if(value==arr[mid]){
return mid;
}
if(value<arr[mid]){
high=mid-1;
}
if(value>arr[mid]){
low=mid+1;
}
}
return -1;
}
}
请教各位大神
最新推荐文章于 2024-07-08 11:34:29 发布