###1.1.10 二分法查找 关键代码
public int rank(int key,int[] a){
int lo = 0;
int hi = a.length() - 1;
while(lo<=hi){
int mid = lo + (hi - lo)/2;
if(key < a[mid]) hi = mid - 1;
else if(key > a[mid]) lo = mid + 1;
return key;
}
return -1;
}
###1.1.10 二分法查找 关键代码
public int rank(int key,int[] a){
int lo = 0;
int hi = a.length() - 1;
while(lo<=hi){
int mid = lo + (hi - lo)/2;
if(key < a[mid]) hi = mid - 1;
else if(key > a[mid]) lo = mid + 1;
return key;
}
return -1;
}