题解 | #农场牛群众数#
农场牛群众数
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; } };