知识点
哈希表
思路
遍历整个数组,用哈希表维护每次可能成为众数的数是谁,如果出现了更好的位置更新。
时间复杂度为
AC Code(C++)
#include <unordered_map> class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型vector * @return int整型vector */ vector<int> findMode(vector<int>& nums) { vector<int> cnt(100010, 0); vector<int> res; int id = 0; for (auto x : nums) { cnt[x] += 1; if (cnt[x] > cnt[id] or (cnt[x] == cnt[id] and x > id)) id = x; res.push_back(id); } return res; } };