0%

442.数组中的重复数据

题目

数组中重复的数据

思路

使用 unordered_map 保存每个整数出现的次数,最后遍历一遍哈希表,将整数出现次数为 2 的整数存入结果数组中。

题解

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class Solution {
public:
vector<int> findDuplicates(vector<int>& nums) {
unordered_map<int, int> hsp;
vector<int> res;
for(int i = 0; i < nums.size(); i ++){
hsp[nums[i]] ++;
}
for(auto it = hsp.begin(); it != hsp.end(); it++){
if(it->second == 2){
res.push_back(it->first);
}
}
return res;
}
};
  • 时间复杂度:O(n),其中 n 是数组 nums 的长度
  • 空间复杂度:O(n),定义的哈希表的大小

执行用时:68 ms, 在所有 C++ 提交中击败了19.03%的用户

内存消耗:43.5 MB, 在所有 C++ 提交中击败了9.79%的用户

通过测试用例:28 / 28

正在加载今日诗词....