JZ37-数字在排序数组中出现的次数

数字在升序数组中出现的次数

https://www.nowcoder.com/practice/70610bf967994b22bb1c26f9ae901fa2?tpId=13&tags=&title=&diffculty=0&judgeStatus=0&rp=1&tab=answerKey

class Solution2 {
    public int GetNumberOfK(int[] array, int k) {
        if (array == null || array.length == 0) {
            return 0;
        }
        int count = 0;
        int index = Arrays.binarySearch(array, k);

        if (index < 0) {
            return count;
        } else {
            count++; //因为下面都是index+-1了
        }

        for (int i = index - 1; i >= 0 && array[i] == k; i--) {
            count++;
        }
        for (int i = index + 1; i < array.length && array[i] == k; i++) {
            count++;
        }
        return count;
    }
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务