int binary_search(int l , int r , int k){
if(l >= r){
return -1;
}
int mid = (l + r) / 2;
if(a[mid == k]){
return mid;
}
if(a[mid] > k){
return binary_search(1 , mid , k);
}
else{
return binary_search(mid + 1,r,k);
}
}//用递归
int binary_search(int l , int r , int k){
int mid;
while(i < r){
mid = (l + r) / 2;
if(a[mid] == k){
return mid;
}
if(a[mid] > k){
r = mid;
}
else{
l = mid + 1;
}
}
return -1;
}//用while循环
int binary_search(int l , int r , int k){
int mid;
int res = -1;
while(i < r){
mid = (l + r) / 2;
if(a[mid] == k){
res = mid;
r = mid;
}
else{
if(a[mid] > k){
r = mid;
}
else{
l = mid + 1;
}
}
}
return -1;
}//找第一个等于k的数字