北美程序员面试干货

LeetCode 137 [Single Number II]

2016-08-08  本文已影响118人  Jason_Yuan

原题

给出3*n + 1 个的数字,除其中一个数字之外其他每个数字均出现三次,找到这个数字。

样例
给出** [1,1,2,3,3,3,2,2,4,1]** ,返回 4

解题思路

完整代码

class Solution(object):
    def singleNumber(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        ones, twos, threes = 0, 0, 0
        for item in A:
            twos |= ones & item      
            ones ^= item          
            threes = ones & twos     

            ones ^= threes         
            twos ^= threes         
        return ones
上一篇 下一篇

猜你喜欢

热点阅读