唯一元素的和
给你一个整数数组 nums 。数组中唯一元素是那些只出现 恰好一次 的元素。
请你返回 nums 中唯一元素的 和 。
示例 1:
输入:nums = [1,2,3,2]
输出:4
解释:唯一元素为 [1,3] ,和为 4 。
示例 2:
输入:nums = [1,1,1,1,1]
输出:0
解释:没有唯一元素,和为 0 。
示例 3 :
输入:nums = [1,2,3,4,5]
输出:15
解释:唯一元素为 [1,2,3,4,5] ,和为 15 。
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/sum-of-unique-elements
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
频率计算(遍历两次)
class Solution {
public int sumOfUnique(int[] nums) {
//直接使用频率大法,数字最大100而已
int[] number = new int[101];
for(int num : nums){
number[num]++;
}
int sum = 0;
for(int i=0;i< number.length;i++){
if(number[i]==1)sum+=i;
}
return sum;
}
}
频率一次遍历
class Solution {
public int sumOfUnique(int[] nums) {
//直接使用频率大法,数字最大100而已
int[] number = new int[101];
int sum = 0;
//第一次遇到加入到sum中,第二次就减去,之后重复不计入sum中
for(int num : nums){
if(number[num]==0){
number[num]++;
sum+=num;
}else if(number[num]<2){
sum-=num;
number[num]++;
}
}
return sum;
}
}