数字在排序数组中出现的次数(两次二分)
程序员文章站
2024-03-20 12:12:46
...
题目描述
统计一个数字在排序数组中出现的次数。
public class Solution {
public int GetNumberOfK(int [] array , int k) {
int l=0,r=array.length-1,mid;
int L,R;
while(l<=r){
mid=(l+r)>>1;
if(array[mid]<k) l=mid+1;
else r=mid-1;
}
if(l>=array.length||array[l]!=k) return 0;
L=l;
l=0;
r=array.length-1;
while(l<=r){
mid=(l+r)>>1;
if(array[mid]>k) r=mid-1;
else l=mid+1;
}
if(r<0||array[r]!=k) return 0;
R=r;
return R-L+1;
}
}
上一篇: SpringCloud的一些使用方式
推荐阅读