Published on

Python Bitwise Operators

Authors
  • avatar
    Name
    Gene Zhang
    Twitter
&	a & b	Bitwise AND
|	a | b	Bitwise OR
^	a ^ b	Bitwise XOR (exclusive OR)
~	~a	    Bitwise NOT
<<	a << n	Bitwise left shift
>>	a >> n	Bitwise right shift

leetcode example

[136] Single Number

https://leetcode.com/problems/single-number/description/

Given a non-empty array of integers nums, every element appears twice except for one. Find that single one.

You must implement a solution with a linear runtime complexity and use only constant extra space.

Example 1: Input: nums = [2,2,1] Output: 1

Example 2: Input: nums = [4,1,2,1,2] Output: 4

Example 3: Input: nums = [1] Output: 1

class Solution:
    def singleNumber(self, nums: List[int]) -> int:
        ret = 0
        for num in nums:
            ret ^= num
        return ret