1. 程式人生 > >牛客網——數字在排序陣列中出現的次數

牛客網——數字在排序陣列中出現的次數

題目描述
統計一個數字在排序陣列中出現的次數。

package 劍指offer;

/**
 * Created by Administrator on 2018/10/28.
 */
public class 數字在排序陣列中出現的次數 {
    public static int GetNumberOfK(int [] array , int k) {
        int num=0;
        int pos=find(array,k);
        if(pos==-1)
            return 0;
        for(int i=pos;
i<array.length&&array[i]==k;i++) num++; return num; } private static int find(int[] array, int k) { int low=0,high=array.length; while (low<high){ int mid=(low+high)>>1; if(array[mid]>=k) high=
mid; else low=mid+1; } if(low==array.length) return -1; return array[low]==k?low:-1; } public static void main(String[] args){ int[] array={1,2,2,3,3,3,3,3,4,5,6,7,8}; int k=3; System.out.println(find(array,
k)); } }