最左值
public static int binarySearchLeft(int[] a,int target){
int i=0,j=a.length-1;
while (i<=j){
int m=(i+j)>>>1;
if(a[m]<target){
i=m+1;
}else if(a[m]>=target){
j=m-1;
}
}
return i;
}
最右值
public static int binarySearchRight(int[] a,int target){
int i=0,j=a.length-1;
while (i<=j){
int m=(i+j)>>>1;
if(a[m]>target){
j=m-1;
}else{
i=m+1;
}
}
return i-1;
}