题目描述
思路
统计每个元素出现的次数
用哈希表记录每个元素出现的次数,遍历哈希表,累加恰好出现一次的元素值,即为答案。
Python实现
class Solution:
def sumOfUnique(self, nums: List[int]) -> int:
return sum(num for num, cnt in Counter(nums).items() if cnt == 1)
Java实现
class Solution {
public int sumOfUnique(int[] nums) {
Map<Integer, Integer> cnt = new HashMap<Integer, Integer>();
for (int num: nums) {
cnt.put(num, cnt.getOrDefault(num, 0) + 1);
}
int ans = 0;
for (Map.Entry<Integer, Integer> entry: cnt.entrySet()) {
int num = entry.getKey(), c = entry.getValue();
if (c == 1) {
ans += num;
}
}
return ans;
}
}