在大小为 2N 的数组 A 中有 N+1 个不同的元素,其中有一个元素重复了 N 次。
返回重复了 N 次的那个元素。
示例 1:
输入:[1,2,3,3]
输出:3
思路:
使用哈希表,建立数字与出现次数的映射。只要发现有一个数字出现次数大于1,这就是要找的数字。
class Solution {
public:
int repeatedNTimes(vector<int>& A) {
unordered_map<int, int> numCnt;
for (int num : A) {
if (++numCnt[num] > 1) return num;
}
return -1;
}
};