本文共 917 字,大约阅读时间需要 3 分钟。
对于给定的整数数组,我们需要统计每个数的出现次数,并检查这些次数是否互不相同。
#include#include #include using namespace std;bool uniqueOccurrences(vector arr) { unordered_map hashMap; for (int num : arr) { hashMap[num]++; } unordered_set occurrenceSet; for (auto& pair : hashMap) { occurrenceSet.insert(pair.second); } return occurrenceSet.size() == hashMap.size();}
unordered_map<int, int> hashMap; 用于存储每个数及其出现次数。for (int num : arr),更新哈希表,记录每个数的出现次数。unordered_set<int> occurrenceSet; 用于存储出现次数,将重复次数去重。return occurrenceSet.size() == hashMap.size(); 如果两集合大小相同,说明次数独一无二,返回true;否则返回false。通过这种方法,可以高效地解决问题,并确保代码易于理解和维护。
转载地址:http://nnusz.baihongyu.com/