public class MyArrays {
/**
* 二分查找法查找元素
* @param a
* @param num
* @return 在数组中的位置
*/
public static int binarySearch(int[] a,int num){
int low=0;
int high=a.length-1;
int mid=0;
while(low<=high){
mid=(low+high)/2;
if(a[mid]<num){
low=mid+1;
}else if(a[mid]>num){
high=mid-1;
}else if(a[mid]==num){
break;
}
}
if(low<=high){
return mid;
}else{
return -1;//如果没找到
}
}
public static void main(String[] args) {
int[] b={1,3,5,6,7,8,10,12,15,16,19,22,23,25};
System.out.println(binarySearch(b, 4));
}
}