题目描述如下:
给你一个整数数组 arr,请你帮忙统计数组中每个数的出现次数。
如果每个数的出现次数都是独一无二的,就返回 true;否则返回 false。
思路:
使用一个哈希表存储出现次数,再使用一个set存储出现次数的重复数,最后比较两者是否相等
class Solution {
public:
bool uniqueOccurrences(vector<int>& arr) {
unordered_map<int,int> m1;
for(auto &i : arr)
m1[i]++;
unordered_set<int> m2;
for(auto &i : m1)
m2.insert(i.second);
return m1.size() == m2.size();
}
};