题解 | #农场牛群众数#

农场牛群众数

https://www.nowcoder.com/practice/de4e4039a45247579ffeef81ccf44266

知识点:

数组/哈希表

分析:

使用哈希表保存每一次遍历到的数字的出现次数,要是比当前次数大,就保存ans数组中,如果出现等于最大次数记得比较数最大的哪一个。

编程语言:

C++

完整代码:

#include <unordered_map>
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param nums int整型vector 
     * @return int整型vector
     */
    vector<int> findMode(vector<int>& nums) {
        unordered_map<int, int> umap;
        int max = 0;
        int maxn = 0;
        vector<int> ans;
        for(int & num : nums){
            umap[num] ++;
            if(umap[num] > max){
                max = umap[num];
                maxn = num;
            }else if(umap[num] == max){
                maxn = num > maxn ? num : maxn;
            }
            ans.push_back(maxn);
        }
        return ans;
    }
};

全部评论

相关推荐

点赞 评论 收藏
分享
10-05 23:02
东北大学 Java
我说句实话啊:那时候看三个月培训班视频,随便做个项目背点八股,都能说3 40w是侮辱价
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务