题解 | #数组中出现次数超过一半的数字#

数组中出现次数超过一半的数字

http://www.nowcoder.com/practice/e8a1b01a2df14cb2b228b30ee6a92163

/**
 * 
 * @param numbers int整型一维数组 
 * @param numbersLen int numbers数组长度
 * @return int整型
 */
int MoreThanHalfNum_Solution(int* numbers, int numbersLen ) {
    // write code here
    int arr[10001] = {0};
    for(int i=0;i<numbersLen;i++)
    {
        arr[numbers[i]]++;
    }
    for(int i=0;i<numbersLen;i++)
    {
        if(arr[numbers[i]] > numbersLen/2)
        {
            return numbers[i];
        }
    }
    return 0;
}
全部评论
虽然能够实现,但是空间复杂度未符合啊大哥。。
点赞 回复 分享
发布于 2022-05-22 12:46
要求:空间复杂度:O(1)O(1)
点赞 回复 分享
发布于 2022-08-30 17:38 江苏

相关推荐

一颗宏心:华为HR晚上过了十二点后还给我法消息。
点赞 评论 收藏
分享
7 收藏 评论
分享
牛客网
牛客企业服务