折半查找,数字按升序排序
public static void main(String[] args) {
int[] array = {1,2,4,6,9,11,44};
int value = 11;
int index = search(array,value);
System.out.println("value="+value+",index="+index);
}
public static int search(int[] array,int value){
int result = -1;
if(array!=null && array.length>0){
int low = 0;
int hight = array.length-1;
while(low<=hight){
int middle = (low+hight)/2;
if(array[middle]==value){
result = middle;
break;
}
else if(array[middle]<value){
low = middle+1;
}
else if(array[middle]>value){
hight = middle-1;
}
}
}
return result;
}