- 一意の出現回数
整数の配列arrを提供します。配列内の各数値の出現回数を数えるのを手伝ってください。
各番号の出現回数が一意の場合はtrueを返し、そうでない場合はfalseを返します。
例1:
入力:arr = [1,2,2,1,1,3]
出力:true
説明:配列では、1が3回出現し、2が2回出現し、3が1回だけ出現します。2つの番号の出現回数が同じになることはありません。
例2:
入力:arr = [1,2]
出力:false
例3:
入力:arr = [-3,0,1、-3,1,1,1、-3,10,0]
出力:true
class Solution {
public boolean uniqueOccurrences(int[] arr) {
Map<Integer, Integer>occur=new HashMap<Integer, Integer>();
for (int i : arr) {
occur.put(i, occur.getOrDefault(i, 0)+1);
}
Set<Integer> times=new HashSet<Integer>();
for(Map.Entry<Integer, Integer>x:occur.entrySet()) {
times.add(x.getValue());
}
return times.size()==occur.size();
}
}
```[Java中map.getOrDefault()方法的使用](https://blog.csdn.net/a1439775520/article/details/104243690?utm_medium=distribute.pc_relevant.none-task-blog-title-1&spm=1001.2101.3001.4242)