二分查找
二分查找主要是针对有序序列(部分有序序列)的元素进行查找
public int bin_search(int a[],int key){
if(a==null||a.length<2) return a;
int lo = 0;
int hi = a.length-1;
while(lo<=hi){
int mid = lo+(hi-lo)/2;
if(a[mid]==key) return mid;
else if(a[mid]>key) hi = mid-1;
else lo = mid+1;
}
return lo;
}