题解 | #草原上的牛群分布#

草原上的牛群分布

https://www.nowcoder.com/practice/25752634aa444758843eed6ff227703a

考察知识点:数组,遍历

解题分析:

通过遍历整个数组nums,之后对每种nums的值做统计,如果当前类型nums的值大于3的话,只统计当前类型的值的数量为3并累积到NewNumsLen中,如果当前的nums的值小于等于3,那就全部都累积到NewNumsLen中。最后统计到的NewNumsLen就是最后的结果

编程语言:C

/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 * 
 * @param nums int整型一维数组 
 * @param numsLen int nums数组长度
 * @return int整型
 */
int remove_duplicates_v3(int* nums, int numsLen ) {
    int count = 1, left_nums = 0;
    int NewNumsLen = 0;

    for (int i = 0; i < numsLen; i++) {
        if (left_nums != nums[i]) {		//如果当前的nums[i]和之前的nums[i]不一样,那就是表明遍历到了下一个值,需要重置count值
            left_nums = nums[i];
            count = 1;
        } else {		//如果当前的nums的值和前面nums的值一致,就给count加1
            count++;
        }

        if (count <= 3)		//如果当前类型的nums的值大于3的个数,就不做统计
            NewNumsLen++;
    }

    return NewNumsLen;
}

面试高频TOP202解析 文章被收录于专栏

采用Java,C,Python等方法去解答面试高频TOP202题目,

全部评论

相关推荐

头像
不愿透露姓名的神秘牛友
04-02 21:36
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务