LeetCode 1748. 唯一元素的和

182 阅读1分钟

题目地址(1748. 唯一元素的和)

leetcode-cn.com/problems/su…

题目描述

给你一个整数数组 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 。


 

提示:

1 <= nums.length <= 100
1 <= nums[i] <= 100

思路

关键点

用字典方式存储,方便遍历算出结构

代码

  • 语言支持:Python3

Python3 Code:


class Solution:
    def sumOfUnique(self, nums: List[int]) -> int:
        from collections import defaultdict
        resDict = defaultdict(int)
        for i in nums:
            resDict[i] += 1
        res = 0
        for key,val in resDict.items():
            if val == 1:
                res += key
            # print(key,val)
        return res

复杂度分析

令 n 为数组长度。

  • 时间复杂度:O(n)O(n)
  • 空间复杂度:O(n)O(n)