二分法是有条件的:数组中的元素要有序排列
定义三个变量,min,mid,max,初始化min=0,max=数组长度-1;mid=(min+max)/2;
public static int halfsearch(int []arr,int temp)
{
int min=0;
int max=arr.length-2;
int mid=(min+max)/2;
while(true){
if(arr[mid]>temp){
max=mid-1;
}
else if(arr[mid]
min=mid+1;
}
else{
return mid;
}
if(max{
return -1;
}
mid=(min+max)/2;
}
}