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;
}
相关推荐
矛取矛求5 分钟前
日期类的实现
开发语言·c++·算法
会开花的二叉树33 分钟前
彻底搞懂 Linux 基础 IO:从文件操作到缓冲区,打通底层逻辑
linux·服务器·c++·后端
在下雨59935 分钟前
项目讲解1
开发语言·数据结构·c++·算法·单例模式
Jayyih44 分钟前
嵌入式系统学习Day36(简单的网页制作)
学习·算法
呼啦啦5611 小时前
【Linux】权限
linux·权限
脑洞代码1 小时前
20250909的学习笔记
算法
Christo31 小时前
TFS-2003《A Contribution to Convergence Theory of Fuzzy c-Means and Derivatives》
人工智能·算法·机器学习
黑菜钟1 小时前
代码随想录第七天|● 454.四数相加II ● 383. 赎金信 ● 15. 三数之和 18.四数之和
c++·算法·leetcode
晨曦5432101 小时前
零基础12周精通Linux学习计划
linux
Yingjun Mo1 小时前
1. 统计推断-ALMOND收敛性分析
人工智能·算法·机器学习