原题
https://leetcode.cn/problems/single-number-ii/description/
思路
集合
复杂度
时间:O(n)
空间:O(n)
Python代码
class Solution:
def singleNumber(self, nums: List[int]) -> int:
nums_set = set(nums)
return (sum(nums_set) * 3 - sum(nums)) // 2
Go代码
func singleNumber(nums []int) int {
// 将切片转为集合
set := make(map[int]bool)
// 计算集合的和
s1 := 0
// 计算切片的和
s2 := 0
for _, n := range nums {
if !set[n] {
set[n] = true
s1 += n
}
s2 += n
}
return (s1*3 - s2) / 2
}
5270

被折叠的 条评论
为什么被折叠?



