【LeetCode 75】第二十一题(1207)独一无二的出现次数

目录

题目:

示例:

分析:

代码+运行结果:


题目:

【LeetCode 75】第二十一题(1207)独一无二的出现次数_第1张图片

示例:

【LeetCode 75】第二十一题(1207)独一无二的出现次数_第2张图片

分析:

用两个unordered_map来分别存放每个数字的出现次数和出现的次数这个数,有点绕,比如说有给的数组有两个1,那么第一个map存放的是(1,2),表示1这个数子出现了两次,而第二个map存放的是(2,true),表示有出现次数为2的数字.

我们可以遍历数组,统计每个数字出现的次数放进第一个map中.

然后再遍历第一个map,然后用第二个map来记录以及出现过的出现次数,如果遇到了相同的出现次数,那么就返回false.否则直到遍历完第一个map都没有碰到相同的出现次数,则返回true.

代码+运行结果:

class Solution {
public:
    bool uniqueOccurrences(vector& arr) {
        unordered_mapm1;
        unordered_mapm2;
        for(int a:arr) m1[a]++;
        for(pairp:m1){
            if(m2.find(p.second)!=m2.end()) return false;
            m2[p.second]=true;
        }
        return true;
    }
};

【LeetCode 75】第二十一题(1207)独一无二的出现次数_第3张图片

你可能感兴趣的:(LeetCode75题解,leetcode,算法,数据结构,c++)