首页 > 其他 > 详细

【leetcode】260. 只出现一次的数字 III

时间:2021-01-07 08:57:22      阅读:25      评论:0      收藏:0      [点我收藏+]

 

class Solution:
    def singleNumber(self, nums: int) -> List[int]:
        # difference between two numbers (x and y) which were seen only once
        bitmask = 0
        for num in nums:
            bitmask ^= num
        
        # rightmost 1-bit diff between x and y
        diff = bitmask & (-bitmask)
        
        x = 0
        for num in nums:
            # bitmask which will contain only x
            if num & diff:
                x ^= num
        
        return [x, bitmask^x]

 

【leetcode】260. 只出现一次的数字 III

原文:https://www.cnblogs.com/ganxiang/p/14244124.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!