Leetcode-Easy 136. Single Number

136. Single Number

  • 描述:
    有一个数组,数字都出现两次,只有一个数字出现一次,找出现一次的数字


    Leetcode-Easy 136. Single Number_第1张图片
  • 思路:
    现将数组去重求和乘以2,然后减去原先的数组之和,即为出现一次的数字
  • 代码
class Solution:
    def singleNumber(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        return sum(set(nums))*2-sum(nums)
                

通过异或(XOR)的方式求解

  • N^N=0
  • N^0=N
class Solution:
    def singleNumber(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        ans=0
        for num in nums:
            ans^=num
        return ans

你可能感兴趣的:(Leetcode-Easy 136. Single Number)