考察知识点:哈希

题目分析:

遍历一遍数组,记录每个品种的数量,维护众数就可以了。

所用编程语言:C++

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