LeetCode例题讲解:3005最大频率元素计数

给你一个由 正整数 组成的数组 nums

返回数组 nums 中所有具有 最大 频率的元素的 总频率

元素的 频率是指该元素在数组中出现的次数。

示例 1:

复制代码
输入:nums = [1,2,2,3,1,4]
输出:4
解释:元素 1 和 2 的频率为 2 ,是数组中的最大频率。
因此具有最大频率的元素在数组中的数量是 4 。

示例 2:

复制代码
输入:nums = [1,2,3,4,5]
输出:5
解释:数组中的所有元素的频率都为 1 ,是最大频率。
因此具有最大频率的元素在数组中的数量是 5 。

一次遍历解决问题

objectivec 复制代码
int maxFrequencyElements(int* nums, int numsSize) {
    int book[100] = {0};
    int i;
    int max = 0,cnt = 0;
    for(i = 0;i < numsSize;i++){
        book[nums[i]-1]++;
        if(book[nums[i]-1] > max){
            max = book[nums[i]-1];
            cnt = 1;
        }else if(book[nums[i]-1] == max){
            cnt++;
        }
    }
    return cnt*max;
}
相关推荐
故事和你913 小时前
sdut-程序设计基础Ⅰ-实验五一维数组(8-13)
开发语言·数据结构·c++·算法·蓝桥杯·图论·类和对象
像污秽一样3 小时前
算法与设计与分析-习题4.2
算法·排序算法·深度优先·dfs·bfs
Storynone4 小时前
【Day20】LeetCode:39. 组合总和,40. 组合总和II,131. 分割回文串
python·算法·leetcode
明明如月学长4 小时前
AI 更新太快学不过来?我用OpenClaw打造专属AI学习工作流
算法
黎阳之光5 小时前
【黎阳之光:以无线专网与视频孪生,赋能智慧广电与数字中国】
算法·安全·智慧城市·数字孪生
V__KING__5 小时前
systemd-remount-fs,fstab之间的渊源
linux·服务器·网络
酿情师5 小时前
Windows Subsystem for Linux (WSL, Ubuntu)安装教程(详细)
linux·windows·ubuntu
刀法如飞6 小时前
Agentic AI时代,程序员必备的算法思想指南
人工智能·算法·agent
刀法如飞6 小时前
Agentic AI时代程序员必备算法思想详解(附实战案例)
算法·ai编程·编程开发·agentic
Titan20246 小时前
Linux环境变量个人笔记
linux·服务器·c++