if(array==null)
{
return 0;
}
int begin = 0;
int end = array.length-1;
int mid = begin + (end-begin)/2;
int count=0;
while(begin<=end)
{
if(array[mid]==k)
{
count++;
int t=mid-1;
int n=mid+1;
while(t>=0&&array[t]==k)
{
t--;
count++;
}
while(n<=array.length-1&&array[n]==k)
{
count++;
n++;
}
return count;
}
else if(array[mid]<k)
{
begin=mid+1;
mid = begin + (end-begin)/2;
}
else{
end = mid-1;
mid = begin + (end-begin)/2;
}
}
return 0;
排序数组中某个数出现的次数
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- def func2(s): s_list1 = [] s_list2 = [] for i in ra...
- 1数组中出现次数超过一半的数字 【题目】数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个...
- 丑数 把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子...
- //出现的次数 function times(arr){ var m=0,times=0;//m是数组中的元素,t...