【每日一题】137. Single Number II

2019-05-22  本文已影响0人  Something0124

原题链接
给定一个非空数组,其中只有一个元素出现了1次,其他的元素均出现了3次。找出这个出现了一次的元素。

先说下Single Number的解决方法:
非空数组,其中只有一个元素出现了1次,其他的元素均出现了2次。
这种情况可以通过异或的方式,相同元素异或为0,其他元素和0异或依然是自身。

这个题目可能不可以通过位运算解决,但是可以通过求和的方式只用一行python代码:

class Solution:
    def singleNumber(self, nums: List[int]) -> int:
        return int((sum(set(nums))*3 - sum(nums))/2)
上一篇下一篇

猜你喜欢

热点阅读